Sync with portage [Fri Apr 30 16:08:40 MSK 2021].

akrasnyh
Calculate Linux 3 years ago
parent 44a3d3a0df
commit ad3969e749

Binary file not shown.

Binary file not shown.

@ -1,8 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<!-- maintainer-needed -->
<upstream>
<remote-id type="launchpad">ical-tcl</remote-id>
</upstream>
<maintainer type="person">
<email>grobian@gentoo.org</email>
<name>Fabian Groffen</name>
</maintainer>
</pkgmetadata>

@ -0,0 +1,9 @@
# Copyright 2019-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit acct-group
DESCRIPTION="Group for mail-filter/opendmarc "
ACCT_GROUP_ID=244

Binary file not shown.

@ -0,0 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>grobian@gentoo.org</email>
<name>Fabian Groffen</name>
</maintainer>
</pkgmetadata>

@ -0,0 +1,16 @@
# Copyright 2019-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit acct-user
DESCRIPTION="User for mail-filter/opendmarc"
ACCT_USER_ID=244
ACCT_USER_GROUPS=( opendmarc )
ACCT_USER_HOME="/var/lib/opendmarc"
ACCT_USER_HOME_PERMS=0700
acct-user_add_deps

Binary file not shown.

@ -1,3 +1,2 @@
DIST httpd-2.4.41.tar.bz2 7072373 BLAKE2B 88a2390736209d5ef04bffcb867bc8d6019302885e6f3cc63d18123336d4d0657252105a3bfebf4e91b8daa02119d4a61f4c0a9702244858a3193ec6cf681c0f SHA512 350cc7dcd2c439e0590338fa6da3f44df44f9bb885c381e91f91b14c2f48597f6f0bbac0ea118a8a67eaa70ae7edbb769beace368643ed73f6daee44c307b335
DIST httpd-2.4.43.tar.bz2 7155865 BLAKE2B cd85c7e25500f8f1b4bd6ac5f715718a61bf548dfaf36408a970d27bacbfce256e4dda255ba5b62f89e117c335d0568d6207c93e5fb0d2b1ee84dba4ce0d4bd7 SHA512 16cfeecc8f6fab6eca478065a384bdf1872f7ac42206b0bc2bcac6c0d9c576f392c07107201f39e0601dec1bbafcb33d66153544de4d87d79b9a52094d334b64
DIST httpd-2.4.46.tar.bz2 7187805 BLAKE2B 2cd8a40be0b7b60ae5b06a286aa6dd801b8615fd0483a4653ceea6f9832c9ebb111f67ba4f69827b01acd1e5552e70ac0441df49573c9da0ca26d4c2f589f0bc SHA512 5936784bb662e9d8a4f7fe38b70c043b468114d931cd10ea831bfe74461ea5856b64f88f42c567ab791fc8907640a99884ba4b6a600f86d661781812735b6f13
DIST httpd-2.4.47.tar.bz2 7187445 BLAKE2B ba5b6ebac73aaa6f2f0d7a34d5bf9d13bd4ac862ee9d04b105c315c3aad16401b842b6901424dba6a44a0b5d255c0356e0bf72b5d1898b4b091b12192c204c96 SHA512 ac05e878604037572b484c32c767e022bf027e5efa2a2ed28472939d9f536448f1536ede4d809f1e913a29a0247bdd27981bd00d3d8614f978573c14bce7c7af

@ -1,105 +0,0 @@
# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit flag-o-matic multilib toolchain-funcs
DESCRIPTION="Useful Apache tools - htdigest, htpasswd, ab, htdbm"
HOMEPAGE="https://httpd.apache.org/"
SRC_URI="mirror://apache/httpd/httpd-${PV}.tar.bz2"
LICENSE="Apache-2.0"
SLOT="0"
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~mips ppc ppc64 ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc64-solaris ~x64-solaris"
IUSE="libressl ssl"
RESTRICT="test"
RDEPEND=">=dev-libs/apr-1.5.0:1=
dev-libs/apr-util:1=
dev-libs/expat
dev-libs/libpcre
kernel_linux? ( sys-apps/util-linux )
ssl? (
!libressl? ( dev-libs/openssl:0= )
libressl? ( dev-libs/libressl:0= )
)"
DEPEND="${RDEPEND}
sys-devel/libtool"
S="${WORKDIR}/httpd-${PV}"
PATCHES=(
"${FILESDIR}/${PN}-2.4.7-Makefile.patch" #459446
)
src_prepare() {
default
# This package really should upgrade to using pcre's .pc file.
cat <<-\EOF >"${T}"/pcre-config
#!/bin/bash
flags=()
for flag; do
if [[ ${flag} == "--version" ]]; then
flags+=( --modversion )
else
flags+=( "${flag}" )
fi
done
exec ${PKG_CONFIG} libpcre "${flags[@]}"
EOF
chmod a+x "${T}"/pcre-config || die
}
src_configure() {
# Brain dead check.
tc-is-cross-compiler && export ap_cv_void_ptr_lt_long="no"
tc-export PKG_CONFIG
local myeconfargs=(
--libexecdir="${EPREFIX}"/usr/$(get_libdir)/apache2/modules
--sbindir="${EPREFIX}"/usr/sbin
--with-perl="${EPREFIX}"/usr/bin/perl
--with-expat="${EPREFIX}"/usr
--with-z="${EPREFIX}"/usr
--with-apr="${SYSROOT}${EPREFIX}"/usr
--with-apr-util="${SYSROOT}${EPREFIX}"/usr
--with-pcre="${T}"/pcre-config
$(use_enable ssl)
$(usex ssl '--with-ssl="${EPREFIX}"/usr' '')
)
# econf overwrites the stuff from config.layout.
ac_cv_path_PKGCONFIG=${PKG_CONFIG} \
econf "${myeconfargs[@]}"
sed -i \
-e '/^LTFLAGS/s:--silent::' \
build/rules.mk build/config_vars.mk || die
}
src_compile() {
emake -C support
}
src_install() {
emake -C support DESTDIR="${D}" install
dodoc CHANGES
doman docs/man/{dbmmanage,htdigest,htpasswd,htdbm,ab,logresolve}.1 \
docs/man/{htcacheclean,rotatelogs}.8
# Providing compatiblity symlinks for #177697 (which we'll stop to install
# at some point).
pushd "${ED}"/usr/sbin >/dev/null || die
local i
for i in *; do
dosym ${i} /usr/sbin/${i}2
done
popd >/dev/null || die
# Provide a symlink for ab-ssl
if use ssl ; then
dosym ab /usr/bin/ab-ssl
dosym ab /usr/bin/ab2-ssl
fi
}

@ -11,7 +11,7 @@ SRC_URI="mirror://apache/httpd/httpd-${PV}.tar.bz2"
LICENSE="Apache-2.0"
SLOT="0"
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~mips ppc ppc64 ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc64-solaris ~x64-solaris"
IUSE="libressl ssl"
IUSE="ssl"
RESTRICT="test"
RDEPEND=">=dev-libs/apr-1.5.0:1=
@ -19,10 +19,7 @@ RDEPEND=">=dev-libs/apr-1.5.0:1=
dev-libs/expat
dev-libs/libpcre
kernel_linux? ( sys-apps/util-linux )
ssl? (
!libressl? ( dev-libs/openssl:0= )
libressl? ( dev-libs/libressl:0= )
)"
ssl? ( dev-libs/openssl:0= )"
DEPEND="${RDEPEND}
sys-devel/libtool"

@ -10,8 +10,8 @@ SRC_URI="mirror://apache/httpd/httpd-${PV}.tar.bz2"
LICENSE="Apache-2.0"
SLOT="0"
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~mips ppc ppc64 ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc64-solaris ~x64-solaris"
IUSE="libressl ssl"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc64-solaris ~x64-solaris"
IUSE="ssl"
RESTRICT="test"
RDEPEND=">=dev-libs/apr-1.5.0:1=
@ -19,10 +19,7 @@ RDEPEND=">=dev-libs/apr-1.5.0:1=
dev-libs/expat
dev-libs/libpcre
kernel_linux? ( sys-apps/util-linux )
ssl? (
!libressl? ( dev-libs/openssl:0= )
libressl? ( dev-libs/libressl:0= )
)"
ssl? ( dev-libs/openssl:0= )"
DEPEND="${RDEPEND}
sys-devel/libtool"
@ -71,7 +68,7 @@ src_configure() {
$(usex ssl '--with-ssl="${EPREFIX}"/usr' '')
)
# econf overwrites the stuff from config.layout.
ac_cv_path_PKGCONFIG=${PKG_CONFIG} \
ac_cv_path_PKGCONFIG="${PKG_CONFIG}" \
econf "${myeconfargs[@]}"
sed -i \
-e '/^LTFLAGS/s:--silent::' \

@ -1,4 +1,4 @@
# Copyright 1999-2020 Gentoo Authors
# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
# TODO: test phase
@ -17,7 +17,7 @@ SRC_URI="https://github.com/cea-hpc/clustershell/archive/v${PV}.tar.gz -> ${P}.t
LICENSE="LGPL-2.1+"
SLOT="0"
KEYWORDS="~amd64 ~x86"
IUSE="doc libressl test"
IUSE="doc test"
CDEPEND="dev-python/setuptools[${PYTHON_USEDEP}]"
DEPEND="
@ -27,9 +27,7 @@ DEPEND="
RDEPEND="
${CDEPEND}
dev-python/pyyaml[${PYTHON_USEDEP}]
!libressl? ( dev-libs/openssl:0= )
libressl? ( dev-libs/libressl:0= )"
dev-libs/openssl:0="
RESTRICT="test" # currently fail
python_install() {

@ -12,7 +12,7 @@ SRC_URI="https://github.com/${PN}/${PN}/releases/download/v${PV}/${P}.tar.gz"
LICENSE="BSD BSD-with-attribution"
SLOT="0"
KEYWORDS="~alpha amd64 ~ia64 ppc ppc64 ~sparc x86"
IUSE="debug ipv6 freeipmi kerberos libressl pam ssl test tcpd"
IUSE="debug ipv6 freeipmi kerberos pam ssl test tcpd"
RESTRICT="!test? ( test )"
DEPEND="debug? ( dev-libs/dmalloc:= )
@ -21,10 +21,7 @@ DEPEND="debug? ( dev-libs/dmalloc:= )
virtual/krb5
net-libs/libgssglue
)
ssl? (
!libressl? ( dev-libs/openssl:0= )
libressl? ( dev-libs/libressl:0= )
)
ssl? ( dev-libs/openssl:0= )
pam? ( sys-libs/pam )
tcpd? ( sys-apps/tcp-wrappers )
"

@ -12,7 +12,7 @@ SRC_URI="https://github.com/${PN}/${PN}/releases/download/v${PV}/${P}.tar.gz"
LICENSE="BSD BSD-with-attribution"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~ia64 ~ppc ~ppc64 ~sparc ~x86"
IUSE="debug ipv6 freeipmi kerberos libressl pam ssl test tcpd"
IUSE="debug ipv6 freeipmi kerberos pam ssl test tcpd"
RESTRICT="!test? ( test )"
DEPEND="debug? ( dev-libs/dmalloc:= )
@ -21,10 +21,7 @@ DEPEND="debug? ( dev-libs/dmalloc:= )
virtual/krb5
net-libs/libgssglue
)
ssl? (
!libressl? ( dev-libs/openssl:0= )
libressl? ( dev-libs/libressl:0= )
)
ssl? ( dev-libs/openssl:0= )
pam? ( sys-libs/pam )
tcpd? ( sys-apps/tcp-wrappers )
"

@ -1,4 +1,4 @@
# Copyright 1999-2020 Gentoo Authors
# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@ -18,7 +18,7 @@ else
fi
LICENSE="GPL-3"
SLOT="2"
IUSE="gnutls hddtemp libressl lm-sensors nls ntlm ssl kernel_FreeBSD X"
IUSE="gnutls hddtemp lm-sensors nls ntlm ssl kernel_FreeBSD X"
RDEPEND="
acct-group/gkrellmd
@ -28,8 +28,7 @@ RDEPEND="
ssl? (
gnutls? ( net-libs/gnutls )
!gnutls? (
!libressl? ( dev-libs/openssl:0= )
libressl? ( dev-libs/libressl:0= )
dev-libs/openssl:0=
)
)
lm-sensors? ( sys-apps/lm-sensors:= )

@ -1,4 +1,4 @@
# Copyright 1999-2020 Gentoo Authors
# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@ -18,7 +18,7 @@ else
fi
LICENSE="GPL-3"
SLOT="2"
IUSE="gnutls hddtemp libressl lm-sensors nls ntlm ssl kernel_FreeBSD X"
IUSE="gnutls hddtemp lm-sensors nls ntlm ssl kernel_FreeBSD X"
RDEPEND="
acct-group/gkrellmd
@ -28,8 +28,7 @@ RDEPEND="
ssl? (
gnutls? ( net-libs/gnutls )
!gnutls? (
!libressl? ( dev-libs/openssl:0= )
libressl? ( dev-libs/libressl:0= )
dev-libs/openssl:0=
)
)
lm-sensors? ( sys-apps/lm-sensors:= )

@ -13,7 +13,6 @@
</longdescription>
<use>
<flag name="gcrypt">Use message digest functions from <pkg>dev-libs/libgcrypt</pkg> instead of sudo's</flag>
<flag name="libressl">Use message digest functions from <pkg>dev-libs/libressl</pkg> instead of sudo's</flag>
<flag name="offensive">Let sudo print insults when the user types the wrong password</flag>
<flag name="sendmail">Allow sudo to send emails with sendmail</flag>
<flag name="sssd">Add System Security Services Daemon support</flag>

@ -30,7 +30,7 @@ fi
# 3-clause BSD license
LICENSE="ISC BSD"
SLOT="0"
IUSE="gcrypt ldap libressl nls offensive pam sasl +secure-path selinux +sendmail skey ssl sssd"
IUSE="gcrypt ldap nls offensive pam sasl +secure-path selinux +sendmail skey ssl sssd"
DEPEND="
sys-libs/zlib:=
@ -45,10 +45,7 @@ DEPEND="
pam? ( sys-libs/pam )
sasl? ( dev-libs/cyrus-sasl )
skey? ( >=sys-auth/skey-1.1.5-r1 )
ssl? (
!libressl? ( dev-libs/openssl:0= )
libressl? ( dev-libs/libressl:0= )
)
ssl? ( dev-libs/openssl:0= )
sssd? ( sys-auth/sssd[sudo] )
"
RDEPEND="

@ -30,7 +30,7 @@ fi
# 3-clause BSD license
LICENSE="ISC BSD"
SLOT="0"
IUSE="gcrypt ldap libressl nls offensive pam sasl +secure-path selinux +sendmail skey ssl sssd"
IUSE="gcrypt ldap nls offensive pam sasl +secure-path selinux +sendmail skey ssl sssd"
DEPEND="
sys-libs/zlib:=
@ -45,10 +45,7 @@ DEPEND="
pam? ( sys-libs/pam )
sasl? ( dev-libs/cyrus-sasl )
skey? ( >=sys-auth/skey-1.1.5-r1 )
ssl? (
!libressl? ( dev-libs/openssl:0= )
libressl? ( dev-libs/libressl:0= )
)
ssl? ( dev-libs/openssl:0= )
sssd? ( sys-auth/sssd[sudo] )
"
RDEPEND="

@ -30,7 +30,7 @@ fi
# 3-clause BSD license
LICENSE="ISC BSD"
SLOT="0"
IUSE="gcrypt ldap libressl nls offensive pam sasl +secure-path selinux +sendmail skey ssl sssd"
IUSE="gcrypt ldap nls offensive pam sasl +secure-path selinux +sendmail skey ssl sssd"
DEPEND="
sys-libs/zlib:=
@ -45,10 +45,7 @@ DEPEND="
pam? ( sys-libs/pam )
sasl? ( dev-libs/cyrus-sasl )
skey? ( >=sys-auth/skey-1.1.5-r1 )
ssl? (
!libressl? ( dev-libs/openssl:0= )
libressl? ( dev-libs/libressl:0= )
)
ssl? ( dev-libs/openssl:0= )
sssd? ( sys-auth/sssd[sudo] )
"
RDEPEND="

@ -360,6 +360,8 @@ DIST github.com%2Fhashicorp%2Fgo-plugin%2F@v%2Fv1.3.0.mod 502 BLAKE2B 8e1ba66012
DIST github.com%2Fhashicorp%2Fgo-plugin%2F@v%2Fv1.3.0.zip 117001 BLAKE2B 756f2a794f142e8a945bd9e2bb82290c2139df4d03357a7afae87c5494865848c3784204b24989d383bab5daf67b1ad9b94ccafb345d89063b8c5a102d2c9901 SHA512 2720f3712371327a88ec167dbb8095d5a69d3434b4d0c479357f637418f2e1754d088ef2d6f3fd77fe0038551dd5379202d253c1964976dce1791e11a560ec0d
DIST github.com%2Fhashicorp%2Fgo-plugin%2F@v%2Fv1.4.0.mod 475 BLAKE2B 9334c7016ebfc52aea6b30713d62098648c4c54cd1d06c108381c7b442af4e49833dbb75b19752ef6af2a3c83dbeeb8776d75e1832da9b854e56cd683bd19ac6 SHA512 f486f7253f45b358b44a94b9d769b62c9922b28dd4d1c8482f93ef0c91e98a8daa5e7505b98d933146b3d1191c2e5fc94d533574368dc19bd4a9e4c131b38d65
DIST github.com%2Fhashicorp%2Fgo-plugin%2F@v%2Fv1.4.0.zip 117916 BLAKE2B e5e0fd48352446542ef627548eaa150f5539a5793a129499a43aae79559317cbacbb0368a5788c3be93b865eccea1f4632d85cbb1a7fc902d2c96c5a91bb836c SHA512 67df1cfea24a169ed802cde13bba4495bd55a1e2c8c5b6d8223e98c003d7dec9aa60f381934e6884c211a1379171a7e83644a7cceb00c899023b08dbba163e17
DIST github.com%2Fhashicorp%2Fgo-plugin%2F@v%2Fv1.4.1.mod 475 BLAKE2B 9334c7016ebfc52aea6b30713d62098648c4c54cd1d06c108381c7b442af4e49833dbb75b19752ef6af2a3c83dbeeb8776d75e1832da9b854e56cd683bd19ac6 SHA512 f486f7253f45b358b44a94b9d769b62c9922b28dd4d1c8482f93ef0c91e98a8daa5e7505b98d933146b3d1191c2e5fc94d533574368dc19bd4a9e4c131b38d65
DIST github.com%2Fhashicorp%2Fgo-plugin%2F@v%2Fv1.4.1.zip 118035 BLAKE2B d0dd514a82e18d723d48c8b60975b4c4caaab375a5a67068bc5f8194061802b8c383b4900ea0758af547dd2acfda084225d23b1c78665ae570edddbb62b89742 SHA512 d29592de89cc2acaa6115f9f091082a1d69f2237d905406ad3518e68c882c1aed2b65cdeca5dcaf97a85e53bdfc3be4bf62dfaddba9765fd59aa668d17d381e8
DIST github.com%2Fhashicorp%2Fgo-retryablehttp%2F@v%2Fv0.5.2.mod 95 BLAKE2B 66af3c20daaa7307f453ab70f7f8db429de6202fef7ad27c4c54f6a37d5c06c253df6ea24ed2315fa8208107187615b7e5d7a5aeae2cd1fcfd3be407e8f67fe7 SHA512 472addc2b61db4d72d356e2033b0963352d5baed7e2c28a567ec4f4f8a4cdf199d50de2022d136f9ef85ee5e0329c2e4b9a6797e4ef07e348fe7976aec56088b
DIST github.com%2Fhashicorp%2Fgo-retryablehttp%2F@v%2Fv0.5.2.zip 17464 BLAKE2B 73165072089e8102868ccbdb428c73409c21f793b1ddd1d8b19335b6da1d938e308dfafff8053257c3a81f7d3de3f5c41e3e642dda7996f76b81877c5945d2a0 SHA512 965ff35de08e6050c4e7efa7aabb110a309663f3933e7c236cfc958579783f99314b3c91cc2434bc3381f4909a1577d644f9a064140ea7509dd891a0adca67e4
DIST github.com%2Fhashicorp%2Fgo-rootcerts%2F@v%2Fv1.0.0.mod 89 BLAKE2B 9e53a988f41eb9425cc2fe3051c0bbe67c65208e6988ae1b455450183c225739b540edb0e59cdd8d010c34e89c4e4acb70687c2bcb861d379443a5c36e261458 SHA512 3446ae69871561766d2b70963eccaf443edafd9328f0f58a97630fde61fa746e59d26ee5d833548a92711555656aa9c1f44bb9e241aa87e21f4424a1f10fbe1a
@ -652,6 +654,8 @@ DIST github.com%2Fzclconf%2Fgo-cty%2F@v%2Fv1.8.0.mod 207 BLAKE2B c6fa7bea22c9783
DIST github.com%2Fzclconf%2Fgo-cty%2F@v%2Fv1.8.0.zip 259753 BLAKE2B 84d49096f09de3d1d4e83608027e50d81d6014eb9d449f68c78e72f22830c4645f7445af9afbd4dadbeb3767db069a669d879d20482240f27f2b7855c0528377 SHA512 556e118b2e75e16d05123d1058447ea702284d71765ea01bf1ae0734a3a31292e2955cc3553daef26ad485c30090c5f82764417e2ef47f9887ea5782046e821b
DIST github.com%2Fzclconf%2Fgo-cty%2F@v%2Fv1.8.1.mod 207 BLAKE2B c6fa7bea22c978311fb4a7bc92da56725efee8c4055a63df58f09cca207fd82551b2108754a0ebb9e300bd4d05aab29ddc51f63c63df296690a3f213e9acf5df SHA512 fa73ed9738f477f22319d9ce7be0f655caeac3164097632425c8480facd0e50a385823093d490d795be61367c92afb8181b7c192ff94d07398874df8677eec7e
DIST github.com%2Fzclconf%2Fgo-cty%2F@v%2Fv1.8.1.zip 263752 BLAKE2B 1a480ed516da3173535ffe33747496111e790fcd49657721a6b3fa2dd5c907ab60836fbc1179ed9298eded305b142ff8d7b83b15944108cbe00b66975c7d735d SHA512 e9f5763670f708bfcc6d45f4da86f0c560dd36baae2cc1d8b8376d18fcae61ccb5c1a4f28ed8fab09e4c07421fa1f493175f73c25e638da85955c68c8b7e5ca9
DIST github.com%2Fzclconf%2Fgo-cty%2F@v%2Fv1.8.2.mod 207 BLAKE2B c6fa7bea22c978311fb4a7bc92da56725efee8c4055a63df58f09cca207fd82551b2108754a0ebb9e300bd4d05aab29ddc51f63c63df296690a3f213e9acf5df SHA512 fa73ed9738f477f22319d9ce7be0f655caeac3164097632425c8480facd0e50a385823093d490d795be61367c92afb8181b7c192ff94d07398874df8677eec7e
DIST github.com%2Fzclconf%2Fgo-cty%2F@v%2Fv1.8.2.zip 268836 BLAKE2B 8838c6632a05d08652a940f0d00367ff6b4d1445e55f0cb0e201b4ae49fa4b7ebe1d82b71a6ae8fe57575f40e2207bb46b5bedbbd7a72154f0dfaae5d08b5ccc SHA512 681321e684bf8f8f61ff047a76346d7ebcad2c6cc91b598dc10aca68566fd1d802f56a16d0e4dceec5210b51e16dc30fc839d824038db6d05caf88fedb991ba7
DIST github.com%2Fzclconf%2Fgo-cty-debug%2F@v%2Fv0.0.0-20191215020915-b22d67c1ba0b.mod 128 BLAKE2B 8aaf551c3afef3baeb7382d33ae0c2467b31bb567b5131d5b0302175b94d2d70a1390eb3f51c4cb7ee4357eb84142bb85c4306e210a9150b828971e3f93d5ac8 SHA512 1695d6effa440673a8c8a6f64b8931c8d6ff3401c4a8020bcb8f899dd6498951cd8fef233fe353e3d32cd59f5db7e3085839f67a5d142e0d3fc0e7772d64c799
DIST github.com%2Fzclconf%2Fgo-cty-debug%2F@v%2Fv0.0.0-20191215020915-b22d67c1ba0b.zip 11821 BLAKE2B 49f42fbdf99c028d1d8be23c5649652509ea302aa05708552e891557c11d9716b864804cc1234ec785c383c03e435b077b80b105172c766f7df4dea56a507ebd SHA512 8cc0a553b7bb7a8d3d08f23ac1531e4f6458c96d84aa2816722304410c6e977f5150603f58f0d4865664fa10d0159f434a160cc674896b1329fc765ef5bf24da
DIST github.com%2Fzclconf%2Fgo-cty-yaml%2F@v%2Fv1.0.2.mod 80 BLAKE2B 792b829d635e212603aa59faf482b301b95e5465e5544f28fd3810393bd270001fee6679a08567963e366d01e0f1fc9e8da9db5727669b6fe262f9d0f2db1431 SHA512 52f4cda625bf8ceda19e65dee204e30b1ceaa68b0a0815e925b22d41a02fce6b44e9e73b6d1e957c7826257dfecfe3d17b5c46da5668384957eb6b723e8024fc
@ -1054,3 +1058,4 @@ DIST terraform-0.14.7.tar.gz 2799398 BLAKE2B 3ac38808a1e9452756514ff7020d9a8f225
DIST terraform-0.14.8.tar.gz 2800767 BLAKE2B 105abf564c24bd2eafdcbef3efef1558886333e37f162a1d85cae700a844706177b0e13b5682aeafe5c1bf265efc63c68116fad476a2705290cac3bba9aeaf58 SHA512 e83675371f3181fa0c868c3536241edb3c930eaf6c5de32f456d16c15881bd5d2c6b727c0ce655a311f5609f935431026dd8e332ed448eb4b3566bcc60846645
DIST terraform-0.14.9.tar.gz 2800597 BLAKE2B fa3679c68164ce0e14938460ee60c58cd85c27120619b5945459851b053aeb60f4c0dcf4c0d00f3b1d4a7805a84bc9b31ba16e30a10b193f7e37cde5b066ae46 SHA512 224cec89180322902a3ff95bb1de5af7ecf351889fdc99ddc5c574bf9f61e7f3b9ba3eead870239fa4f977c6c337a322bbc2260af301295bad7b2d2fb28a0da1
DIST terraform-0.15.0.tar.gz 2805779 BLAKE2B 5edd00b5cc2daa1fdbf31d14056b356bceaca107f628ba272b86026dea54b98dc061e6497c855e620a160d8a07a3a3cefeeb29c1933d85446b8a531aea39cb79 SHA512 13b858959d2ceee785eb046eadd65063c7dd4e96e1c70fc58e8446c40f321c38118fa1cdb153d938b432633a035f3876f169bfc01f566283b422b51a5df5d36c
DIST terraform-0.15.1.tar.gz 2817442 BLAKE2B 04cf7864bd4e55a5277dc973cd2c90f5b8674046b6e02691e17c3db2639b3429a8c36f7d8ff7a6d0b1d33173a1dc004e7854668d7eb56ef2fa8ffc9428bae07b SHA512 be077a68df57ea1413acab3b7fdbdb39e0890856c4c4c54f38cc09e51e46f3738e8db46f5e5ff6a60ba515a42a0db9e9992df83567ec111a5870485cda562957

File diff suppressed because it is too large Load Diff

Binary file not shown.

@ -1,4 +1,4 @@
# Copyright 1999-2019 Gentoo Authors
# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@ -10,6 +10,7 @@ DESCRIPTION="Recompress ZIP, PNG and MNG, considerably improving compression"
HOMEPAGE="https://www.advancemame.it/comp-readme.html"
SRC_URI="https://github.com/amadvance/advancecomp/archive/${EGIT_COMMIT}.tar.gz
-> ${PN}-${EGIT_COMMIT}.tar.gz"
S=${WORKDIR}/${PN}-${EGIT_COMMIT}
LICENSE="GPL-2+ Apache-2.0 LGPL-2.1+ MIT"
SLOT="0"
@ -24,7 +25,9 @@ DEPEND="${RDEPEND}"
# https://sourceforge.net/p/advancemame/bugs/270/
RESTRICT="test"
S=${WORKDIR}/${PN}-${EGIT_COMMIT}
PATCHES=(
"${FILESDIR}"/${P}-gcc-11.patch
)
src_prepare() {
default

@ -0,0 +1,184 @@
From 7b08f7a2af3f66ab95437e4490499cebb20e5e41 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= <mgorny@gentoo.org>
Date: Wed, 28 Apr 2021 22:11:42 +0200
Subject: [PATCH] Remove dynamic exception specification to fix C++17
compatibility
The dynamic exception specifications have been deprecated in C++11
and eventually removed in C++17 [1]. GCC-11 uses gnu++17 by default,
causing advancecomp to fail to compile:
In file included from rezip.cc:24:
file.h:70:43: error: ISO C++17 does not allow dynamic exception specifications
70 | bool file_exists(const std::string& file) throw (error);
| ^~~~~
file.h:71:75: error: ISO C++17 does not allow dynamic exception specifications
71 | e(const std::string& path, const char* data, unsigned size) throw (error);
| ^~~~~
...
Since there is really no gain from having these specifications anymore,
just remove them to fix the build.
[1] https://en.cppreference.com/w/cpp/language/except_spec
---
file.cc | 26 +++++++++++++-------------
file.h | 24 ++++++++++++------------
2 files changed, 25 insertions(+), 25 deletions(-)
diff --git a/file.cc b/file.cc
index 1e90348..d676d25 100644
--- a/file.cc
+++ b/file.cc
@@ -98,7 +98,7 @@ void infopath::readonly_set(bool Areadonly)
/**
* Check if a file exists.
*/
-bool file_exists(const string& path) throw (error)
+bool file_exists(const string& path)
{
struct stat s;
if (stat(path.c_str(), &s) != 0) {
@@ -114,7 +114,7 @@ bool file_exists(const string& path) throw (error)
/**
* Write a whole file.
*/
-void file_write(const string& path, const char* data, unsigned size) throw (error)
+void file_write(const string& path, const char* data, unsigned size)
{
FILE* f = fopen(path.c_str(), "wb");
if (!f)
@@ -134,7 +134,7 @@ void file_write(const string& path, const char* data, unsigned size) throw (erro
/**
* Read a whole file.
*/
-void file_read(const string& path, char* data, unsigned size) throw (error)
+void file_read(const string& path, char* data, unsigned size)
{
file_read(path, data, 0, size);
}
@@ -142,7 +142,7 @@ void file_read(const string& path, char* data, unsigned size) throw (error)
/**
* Read a whole file.
*/
-void file_read(const string& path, char* data, unsigned offset, unsigned size) throw (error)
+void file_read(const string& path, char* data, unsigned offset, unsigned size)
{
FILE* f = fopen(path.c_str(), "rb");
if (!f)
@@ -166,7 +166,7 @@ void file_read(const string& path, char* data, unsigned offset, unsigned size) t
/**
* Get the time of a file.
*/
-time_t file_time(const string& path) throw (error)
+time_t file_time(const string& path)
{
struct stat s;
if (stat(path.c_str(), &s)!=0)
@@ -178,7 +178,7 @@ time_t file_time(const string& path) throw (error)
/**
* Set the time of a file.
*/
-void file_utime(const string& path, time_t tod) throw (error)
+void file_utime(const string& path, time_t tod)
{
struct utimbuf u;
@@ -192,7 +192,7 @@ void file_utime(const string& path, time_t tod) throw (error)
/**
* Get the size of a file.
*/
-unsigned file_size(const string& path) throw (error)
+unsigned file_size(const string& path)
{
struct stat s;
if (stat(path.c_str(), &s)!=0)
@@ -204,7 +204,7 @@ unsigned file_size(const string& path) throw (error)
/**
* Get the crc of a file.
*/
-crc_t file_crc(const string& path) throw (error)
+crc_t file_crc(const string& path)
{
unsigned size = file_size(path);
@@ -227,7 +227,7 @@ crc_t file_crc(const string& path) throw (error)
/**
* Copy a file.
*/
-void file_copy(const string& path1, const string& path2) throw (error)
+void file_copy(const string& path1, const string& path2)
{
unsigned size;
@@ -249,7 +249,7 @@ void file_copy(const string& path1, const string& path2) throw (error)
/**
* Move a file.
*/
-void file_move(const string& path1, const string& path2) throw (error)
+void file_move(const string& path1, const string& path2)
{
if (rename(path1.c_str(), path2.c_str())!=0
&& errno==EXDEV) {
@@ -271,7 +271,7 @@ void file_move(const string& path1, const string& path2) throw (error)
/**
* Remove a file.
*/
-void file_remove(const string& path1) throw (error)
+void file_remove(const string& path1)
{
if (remove(path1.c_str())!=0) {
throw error() << "Failed remove of " << path1;
@@ -281,7 +281,7 @@ void file_remove(const string& path1) throw (error)
/**
* Rename a file.
*/
-void file_rename(const string& path1, const string& path2) throw (error)
+void file_rename(const string& path1, const string& path2)
{
if (rename(path1.c_str(), path2.c_str())!=0) {
throw error() << "Failed rename of " << path1 << " to " << path2;
@@ -409,7 +409,7 @@ string file_adjust(const string& path) throw ()
/**
* Make a drectory tree.
*/
-void file_mktree(const std::string& path) throw (error)
+void file_mktree(const std::string& path)
{
string dir = file_dir(path);
string name = file_name(path);
diff --git a/file.h b/file.h
index 1b0cf85..49429b5 100644
--- a/file.h
+++ b/file.h
@@ -67,18 +67,18 @@ typedef unsigned crc_t;
crc_t crc_compute(const char* data, unsigned len);
crc_t crc_compute(crc_t pred, const char* data, unsigned len);
-bool file_exists(const std::string& file) throw (error);
-void file_write(const std::string& path, const char* data, unsigned size) throw (error);
-void file_read(const std::string& path, char* data, unsigned size) throw (error);
-void file_read(const std::string& path, char* data, unsigned offset, unsigned size) throw (error);
-time_t file_time(const std::string& path) throw (error);
-void file_utime(const std::string& path, time_t tod) throw (error);
-unsigned file_size(const std::string& path) throw (error);
-crc_t file_crc(const std::string& path) throw (error);
-void file_copy(const std::string& path1, const std::string& path2) throw (error);
-void file_move(const std::string& path1, const std::string& path2) throw (error);
-void file_remove(const std::string& path1) throw (error);
-void file_mktree(const std::string& path1) throw (error);
+bool file_exists(const std::string& file);
+void file_write(const std::string& path, const char* data, unsigned size);
+void file_read(const std::string& path, char* data, unsigned size);
+void file_read(const std::string& path, char* data, unsigned offset, unsigned size);
+time_t file_time(const std::string& path);
+void file_utime(const std::string& path, time_t tod);
+unsigned file_size(const std::string& path);
+crc_t file_crc(const std::string& path);
+void file_copy(const std::string& path1, const std::string& path2);
+void file_move(const std::string& path1, const std::string& path2);
+void file_remove(const std::string& path1);
+void file_mktree(const std::string& path1);
std::string file_temp(const std::string& path) throw ();
std::string file_randomize(const std::string& path, int n) throw ();

@ -11,7 +11,7 @@ SRC_URI="https://www.libarchive.org/downloads/${P}.tar.gz"
LICENSE="BSD BSD-2 BSD-4 public-domain"
SLOT="0/13"
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
IUSE="acl blake2 +bzip2 +e2fsprogs expat +iconv kernel_linux libressl lz4 +lzma lzo nettle static-libs +threads xattr +zlib zstd"
IUSE="acl blake2 +bzip2 +e2fsprogs expat +iconv kernel_linux lz4 +lzma lzo nettle static-libs +threads xattr +zlib zstd"
RDEPEND="
acl? ( virtual/acl[${MULTILIB_USEDEP}] )
@ -23,8 +23,7 @@ RDEPEND="
kernel_linux? (
xattr? ( sys-apps/attr[${MULTILIB_USEDEP}] )
)
!libressl? ( dev-libs/openssl:0=[${MULTILIB_USEDEP}] )
libressl? ( dev-libs/libressl:0=[${MULTILIB_USEDEP}] )
dev-libs/openssl:0=[${MULTILIB_USEDEP}]
lz4? ( >=app-arch/lz4-0_p131:0=[${MULTILIB_USEDEP}] )
lzma? ( app-arch/xz-utils[threads=,${MULTILIB_USEDEP}] )
lzo? ( >=dev-libs/lzo-2[${MULTILIB_USEDEP}] )

Binary file not shown.

@ -1,4 +1,4 @@
# Copyright 1999-2020 Gentoo Authors
# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@ -20,12 +20,10 @@ HOMEPAGE="https://attic-backup.org/"
LICENSE="BSD"
SLOT="0"
IUSE="libressl"
RDEPEND="
dev-python/msgpack[${PYTHON_USEDEP}]
!libressl? ( dev-libs/openssl:0= )
libressl? ( dev-libs/libressl:0= )
dev-libs/openssl:0=
dev-python/llfuse[${PYTHON_USEDEP}]"
DEPEND="

@ -1,4 +1,4 @@
# Copyright 1999-2020 Gentoo Authors
# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@ -20,12 +20,10 @@ HOMEPAGE="https://attic-backup.org/"
LICENSE="BSD"
SLOT="0"
IUSE="libressl"
RDEPEND="
dev-python/msgpack[${PYTHON_USEDEP}]
!libressl? ( dev-libs/openssl:0= )
libressl? ( dev-libs/libressl:0= )
dev-libs/openssl:0=
dev-python/llfuse[${PYTHON_USEDEP}]"
DEPEND="

@ -0,0 +1 @@
DIST deja-dup-42.7.tar.bz2 1384797 BLAKE2B f462df835039606b721d935e086e51ee27e861baa1fbc5836bb79952c838921cf5f28d439465451c5259bc2c77fa9cb839488c8b0196c6d176e32d9e42180539 SHA512 80c57fe75635346cf2597195e7f7b76e2562aaa6900e78fbfb7ad6ada9c268df36d4e16aa7ca522e1570987f5826586e1cab5fecb7d5ba90e34a23a349b47a74

@ -0,0 +1,57 @@
# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit meson gnome2-utils vala xdg
DESCRIPTION="Simple backup tool using duplicity back-end"
HOMEPAGE="https://wiki.gnome.org/Apps/DejaDup"
SRC_URI="https://gitlab.gnome.org/World/deja-dup/-/archive/${PV}/${P}.tar.bz2"
LICENSE="GPL-3+"
SLOT="0"
KEYWORDS="~amd64"
IUSE="test"
RESTRICT="!test? ( test )"
BDEPEND="
$(vala_depend)
dev-util/intltool
dev-util/itstool
sys-devel/gettext
virtual/pkgconfig
test? ( dev-libs/appstream-glib )
"
DEPEND="
>=app-backup/duplicity-0.7.14
>=app-crypt/libsecret-0.18.6[vala]
>=dev-libs/glib-2.64:2[dbus]
>=dev-libs/json-glib-1.2
dev-libs/libgpg-error
>=gui-libs/libhandy-1.0
>=net-libs/libsoup-2.48
>=x11-libs/gtk+-3.22:3
>=x11-libs/libnotify-0.7
"
RDEPEND="${DEPEND}
gnome-base/dconf
gnome-base/gvfs[fuse]
"
src_prepare() {
default
vala_src_prepare
}
pkg_postinst() {
gnome2_schemas_update
xdg_icon_cache_update
}
pkg_postrm() {
gnome2_schemas_update
xdg_icon_cache_update
}

@ -0,0 +1,31 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person" proxied="yes">
<name>Oz Tiram</name>
<email>oz.tiram@gmail.com</email>
</maintainer>
<maintainer type="project" proxied="proxy">
<email>proxy-maint@gentoo.org</email>
<name>Proxy Maintainers</name>
</maintainer>
<longdescription lang="en">
Déjà Dup is a simple backup tool. It hides the complexity of backing up the
Right Way (encrypted, off-site, and regular) and uses
duplicity as the backend.
Support for local, remote, or cloud backup locations such as Google Drive
Securely encrypts and compresses your data
Incrementally backs up, letting you restore from any particular backup
Schedules regular backups
Integrates well into your GNOME desktop
Déjà Dup focuses on ease of use and personal, accidental data loss.
If you need a full system backup or an archival program, you may prefer other
backup apps.
</longdescription>
<upstream>
<remote-id type="gitlab">https://gitlab.gnome.org/World/deja-dup</remote-id>
<bugs-to>https://gitlab.gnome.org/World/deja-dup/issues</bugs-to>
</upstream>
</pkgmetadata>

Binary file not shown.

@ -1,4 +1,3 @@
DIST nano-5.3.tar.gz 2874796 BLAKE2B d266018f2508153369e10c6f9cf4c53eaeafdf0efe88da6de19efd76ef13fedebe4b9339ae594b751a12cf18a8c4dcd57466ceedfabf61406f63b69c75fceff1 SHA512 019b58779f5a7d9a9472b415715876d0daac313a02b794900339469ee0b5a27ce202e397c00ad6396b7e26a7c303e52c28d981fff85cf774c79a5a8a9835836d
DIST nano-5.5.tar.gz 2943973 BLAKE2B cecc4b3bb74c6ca35a249052cc58df618b6a0445781813d1b06164afb3d119bedf49bdb0a04c327d4db968eeb5b0f1087b84184b83d4b92548c3146a4400389d SHA512 968eac59db2889ba1cb75bc83a30fd0c0ae370a05c668da0f3a20768158f3be0962034737924ea49f06e696e68625bc6841f41aae86aebbe8ba7c00b2627c056
DIST nano-5.6.1.tar.gz 2957693 BLAKE2B dbd1a63b6e0997a30a2ef40ad3248a7f53e2613d4662d5b9fc585bd0e2dfe78f8e8c71354e1a5bbf043ca99e0a69742df7846656d1f0706af79bcbfc53b6d1a6 SHA512 e27ca4411472409bd6ff8d812405e4d8aa869c1348c0a6adbb1c538fb5bdd112b322ef6d8a13df0b43c472d925b94111ac676d03f360d79181dee335a4fd09cf
DIST nano-5.6.tar.gz 2956090 BLAKE2B 753c49e67403577ac272438b2a577f29978f621cb1823f3ccc4fb5df229b805c72a7123d5e5632cb9e1d4b50c7cf90675d748e7e88709703be44126e11231974 SHA512 fff8a558b435b9f372f19306e63c3bad34a60b4b1979ddf2a5724f96ca69fd7fd5850e841f714fad2e382ffc8e5c3f5085f6a6e965ff30f44bf12b8ac865fe6b
DIST nano-5.7.tar.gz 2989413 BLAKE2B 604f3140bd963661bb7d13933b5bac867bcfd90635287dc8f160e4bda094641c20f2fe2157fe1b5eda28842f78c4e651a354ed6edcafe67b4f2bf6c9eda0051c SHA512 f6d580918c488b15a5f8f77b4b52ea3e86535c251fe32dd978bae014bcadd543a5696f7741018ffd05b6271c1defe6a67687577f3cfe059ed2b4d3e422b2a694

@ -1,89 +0,0 @@
# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit flag-o-matic
if [[ ${PV} == "9999" ]] ; then
EGIT_REPO_URI="https://git.savannah.gnu.org/git/nano.git"
inherit git-r3 autotools
else
MY_P="${PN}-${PV/_}"
SRC_URI="https://www.nano-editor.org/dist/v${PV:0:1}/${MY_P}.tar.gz"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
fi
DESCRIPTION="GNU GPL'd Pico clone with more functionality"
HOMEPAGE="https://www.nano-editor.org/ https://wiki.gentoo.org/wiki/Nano/Basics_Guide"
LICENSE="GPL-3"
SLOT="0"
IUSE="debug justify magic minimal ncurses nls +spell +split-usr static unicode"
LIB_DEPEND=">=sys-libs/ncurses-5.9-r1:0=[unicode?]
sys-libs/ncurses:0=[static-libs(+)]
magic? ( sys-apps/file[static-libs(+)] )
nls? ( virtual/libintl )"
RDEPEND="!static? ( ${LIB_DEPEND//\[static-libs(+)]} )"
DEPEND="${RDEPEND}
static? ( ${LIB_DEPEND} )"
BDEPEND="
nls? ( sys-devel/gettext )
virtual/pkgconfig
"
REQUIRED_USE="
magic? ( !minimal )
"
src_prepare() {
default
if [[ ${PV} == "9999" ]] ; then
eautoreconf
fi
}
src_configure() {
use static && append-ldflags -static
local myconf=(
--bindir="${EPREFIX}"/bin
--htmldir=/trash
$(use_enable !minimal color)
$(use_enable !minimal multibuffer)
$(use_enable !minimal nanorc)
$(use_enable magic libmagic)
$(use_enable spell speller)
$(use_enable justify)
$(use_enable debug)
$(use_enable nls)
$(use_enable unicode utf8)
$(use_enable minimal tiny)
)
econf "${myconf[@]}"
}
src_install() {
default
# don't use "${ED}" here or things break (#654534)
rm -r "${D}"/trash || die
dodoc doc/sample.nanorc
docinto html
dodoc doc/faq.html
insinto /etc
newins doc/sample.nanorc nanorc
if ! use minimal ; then
# Enable colorization by default.
sed -i \
-e '/^# include /s:# *::' \
"${ED}"/etc/nanorc || die
# Since nano-5.0 these are no longer being "enabled" by default
# (bug #736848)
local rcdir="/usr/share/nano"
mv "${ED}"${rcdir}/extra/* "${ED}"/${rcdir}/ || die
rmdir "${ED}"${rcdir}/extra || die
fi
use split-usr && dosym ../../bin/nano /usr/bin/nano
}

Binary file not shown.

@ -1,4 +1,4 @@
# Copyright 1999-2020 Gentoo Authors
# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@ -13,7 +13,7 @@ SLOT="0"
if [[ ${PV} = *9999* ]]; then
inherit golang-vcs
else
KEYWORDS="~amd64 ~arm64"
KEYWORDS="amd64 ~arm64"
EGIT_COMMIT="v${PV}"
SRC_URI="https://${EGO_PN}/archive/${EGIT_COMMIT}.tar.gz -> ${P}.tar.gz"
inherit golang-vcs-snapshot

@ -1,2 +1,4 @@
DIST lxc-4.0.6.tar.gz 1363162 BLAKE2B e2d9d281cf521575aeecefbcba0c7b7f336ab73193be94e760b37eb6f3423ec3520f194549def6f64c1662f22b7df5a03dfc6b4e6dac1bf229c5f726f51b4d43 SHA512 98514796ef2091a291516ed7fde737df07ccfe374a0f8b4314e0ee992837e98ed02aa9f7809f8808a2f5ee1c7ae2dcea163531cdaedbb577211eeb9beff90c15
DIST lxc-4.0.6.tar.gz.asc 833 BLAKE2B 04b6bda0ed52a6ab8eebde4d3d5f1f6cb19eea017ae989d47323831d467324f99801b40c3bb70f00d7521753a298e6fa339f0da039c4d72b0163d0efc815d7e7 SHA512 baeafa5b63034e2884d5ab4f11710612bed1c61cd493ac19b9b24b93365b89325518b69878015b4b752f71beda47ecabf774b698e6be9ec9aa86376df2c302db
DIST lxc-4.0.7.tar.gz 1485130 BLAKE2B 1b806282f3a07df1936f11a6c7c8f0f4dd10ca91aecb3cf881e4cd5c4106035828619ee4bcb163242206e6aafced7841fcd10c191f1b8d609d4e8cb19d81ba6c SHA512 cc04332466090154cf1862fad7a52c9ad7f08462cbe113b12092face43c0e92d53e082af7744667d5397e6289f4ffcf6787c0cb17648013d267b13437be4d992
DIST lxc-4.0.7.tar.gz.asc 833 BLAKE2B 90e533b5fe96b1f8fd2d3dc08e45438b9211855c79ec514ab722ad5e5b6ec0cbd3579805143c81c854ac09d50ee14319404ee4523dff69c05f4a43137284235f SHA512 a64624b2796d0dac2e0c274cfaaf7c42c23d77903f643005bd5433543318c81b0e715042332a1c120250d4ef23d51ef9be0b7cedeced4f7bfe53d1aee46a6822

@ -0,0 +1,174 @@
# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit autotools bash-completion-r1 linux-info flag-o-matic optfeature pam readme.gentoo-r1 systemd verify-sig
DESCRIPTION="A userspace interface for the Linux kernel containment features"
HOMEPAGE="https://linuxcontainers.org/ https://github.com/lxc/lxc"
SRC_URI="https://linuxcontainers.org/downloads/lxc/${P}.tar.gz
verify-sig? ( https://linuxcontainers.org/downloads/lxc/${P}.tar.gz.asc )"
KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86"
LICENSE="LGPL-3"
SLOT="0"
IUSE="apparmor +caps doc examples libressl man pam selinux +ssl +tools verify-sig"
RDEPEND="acct-group/lxc
acct-user/lxc
app-misc/pax-utils
sys-apps/util-linux
sys-libs/libcap
sys-libs/libseccomp
virtual/awk
caps? ( sys-libs/libcap )
pam? ( sys-libs/pam )
selinux? ( sys-libs/libselinux )
ssl? (
!libressl? ( dev-libs/openssl:0= )
libressl? ( dev-libs/libressl:0= )
)"
DEPEND="${RDEPEND}
>=sys-kernel/linux-headers-4
apparmor? ( sys-apps/apparmor )"
BDEPEND="doc? ( app-doc/doxygen )
man? ( app-text/docbook-sgml-utils )
verify-sig? ( app-crypt/openpgp-keys-linuxcontainers )"
CONFIG_CHECK="~!NETPRIO_CGROUP
~CGROUPS
~CGROUP_CPUACCT
~CGROUP_DEVICE
~CGROUP_FREEZER
~CGROUP_SCHED
~CPUSETS
~IPC_NS
~MACVLAN
~MEMCG
~NAMESPACES
~NET_NS
~PID_NS
~POSIX_MQUEUE
~USER_NS
~UTS_NS
~VETH"
ERROR_CGROUP_FREEZER="CONFIG_CGROUP_FREEZER: needed to freeze containers"
ERROR_MACVLAN="CONFIG_MACVLAN: needed for internal (inter-container) networking"
ERROR_MEMCG="CONFIG_MEMCG: needed for memory resource control in containers"
ERROR_NET_NS="CONFIG_NET_NS: needed for unshared network"
ERROR_POSIX_MQUEUE="CONFIG_POSIX_MQUEUE: needed for lxc-execute command"
ERROR_UTS_NS="CONFIG_UTS_NS: needed to unshare hostnames and uname info"
ERROR_VETH="CONFIG_VETH: needed for internal (host-to-container) networking"
DOCS=( AUTHORS CONTRIBUTING MAINTAINERS NEWS README doc/FAQ.txt )
pkg_setup() {
linux-info_pkg_setup
}
PATCHES=(
"${FILESDIR}"/${PN}-3.0.0-bash-completion.patch
"${FILESDIR}"/${PN}-2.0.5-omit-sysconfig.patch # bug 558854
)
VERIFY_SIG_OPENPGP_KEY_PATH=${BROOT}/usr/share/openpgp-keys/linuxcontainers.asc
src_prepare() {
default
eautoreconf
}
src_configure() {
append-flags -fno-strict-aliasing
local myeconfargs=(
--bindir=/usr/bin
--localstatedir=/var
--sbindir=/usr/bin
--with-config-path=/var/lib/lxc
--with-distro=gentoo
--with-init-script=systemd
--with-rootfs-path=/var/lib/lxc/rootfs
--with-runtime-path=/run
--with-systemdsystemunitdir=$(systemd_get_systemunitdir)
--disable-coverity-build
--disable-dlog
--disable-fuzzers
--disable-mutex-debugging
--disable-no-undefined
--disable-rpath
--disable-sanitizers
--disable-tests
--disable-werror
--enable-bash
--enable-commands
--enable-memfd-rexec
--enable-seccomp
--enable-thread-safety
$(use_enable apparmor)
$(use_enable caps capabilities)
$(use_enable doc api-docs)
$(use_enable examples)
$(use_enable man doc)
$(use_enable pam)
$(use_enable selinux)
$(use_enable ssl openssl)
$(use_enable tools)
$(use_with pam pamdir $(getpam_mod_dir))
)
econf "${myeconfargs[@]}"
}
src_install() {
default
mv "${ED}"/usr/share/bash-completion/completions/${PN} "${ED}"/$(get_bashcompdir)/${PN}-start || die
bashcomp_alias ${PN}-start \
${PN}-{attach,cgroup,copy,console,create,destroy,device,execute,freeze,info,monitor,snapshot,stop,unfreeze,wait}
keepdir /etc/lxc /var/lib/lxc/rootfs /var/log/lxc
rmdir "${D}"/var/cache/lxc "${D}"/var/cache || die "rmdir failed"
find "${D}" -name '*.la' -delete -o -name '*.a' -delete || die
# Gentoo-specific additions!
newinitd "${FILESDIR}/${PN}.initd.8" ${PN}
# Remember to compare our systemd unit file with the upstream one
# config/init/systemd/lxc.service.in
systemd_newunit "${FILESDIR}"/${PN}_at.service.4.0.0 "lxc@.service"
DOC_CONTENTS="
For openrc, there is an init script provided with the package.
You should only need to symlink /etc/init.d/lxc to
/etc/init.d/lxc.configname to start the container defined in
/etc/lxc/configname.conf.
Correspondingly, for systemd a service file lxc@.service is installed.
Enable and start lxc@configname in order to start the container defined
in /etc/lxc/configname.conf."
DISABLE_AUTOFORMATTING=true
readme.gentoo_create_doc
}
pkg_postinst() {
readme.gentoo_print_elog
elog "Please run 'lxc-checkconfig' to see optional kernel features."
elog
optfeature "automatic template scripts" app-emulation/lxc-templates
optfeature "Debian-based distribution container image support" dev-util/debootstrap
optfeature "snapshot & restore functionality" sys-process/criu
}

@ -1 +1,2 @@
DIST qemu-5.2.0.tar.xz 106902800 BLAKE2B 4413d5591cbabf80faba5b0b7347ee7749ff0a71af44bdf7f64b1995e17ecf1f3df539fa8e63959e0d50cd0502a41a2921e60cc6d078ed8ab5b09ab4b86d4ed7 SHA512 bddd633ce111471ebc651e03080251515178808556b49a308a724909e55dac0be0cc0c79c536ac12d239678ae94c60100dc124be9b9d9538340c03a2f27177f3
DIST qemu-6.0.0.tar.xz 107333232 BLAKE2B 7746329d3e13782b7c346ce4052cc517cfc65cd9b2d514d199e4d5b8570ca79566ec04b0c114db2e97c84e68eb551e0d4cdce1b14b91a88fe08d2a5f682c1418 SHA512 ee3ff00aebec4d8891d2ff6dabe4e667e510b2a4fe3f6190aa34673a91ea32dcd2db2e9bf94c2f1bf05aa79788f17cfbbedc6027c0988ea08a92587b79ee05e4

@ -0,0 +1,905 @@
# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="7"
PYTHON_COMPAT=( python3_{7,8,9} )
PYTHON_REQ_USE="ncurses,readline"
FIRMWARE_ABI_VERSION="5.2.0-r50"
inherit eutils linux-info toolchain-funcs multilib python-r1
inherit udev fcaps readme.gentoo-r1 pax-utils l10n xdg-utils
if [[ ${PV} = *9999* ]]; then
EGIT_REPO_URI="https://git.qemu.org/git/qemu.git"
EGIT_SUBMODULES=(
meson
tests/fp/berkeley-softfloat-3
tests/fp/berkeley-testfloat-3
ui/keycodemapdb
)
inherit git-r3
SRC_URI=""
else
SRC_URI="https://download.qemu.org/${P}.tar.xz"
KEYWORDS="~amd64 ~arm64 ~ppc ~ppc64 ~x86"
fi
DESCRIPTION="QEMU + Kernel-based Virtual Machine userland tools"
HOMEPAGE="http://www.qemu.org http://www.linux-kvm.org"
LICENSE="GPL-2 LGPL-2 BSD-2"
SLOT="0"
IUSE="accessibility +aio alsa bzip2 capstone +caps +curl debug +doc
+fdt glusterfs gnutls gtk infiniband iscsi io-uring
jack jemalloc +jpeg kernel_linux
kernel_FreeBSD lzo multipath
ncurses nfs nls numa opengl +oss +pin-upstream-blobs
plugins +png pulseaudio python rbd sasl +seccomp sdl sdl-image selinux
+slirp
smartcard snappy spice ssh static static-user systemtap test udev usb
usbredir vde +vhost-net vhost-user-fs virgl virtfs +vnc vte xattr xen
xfs zstd"
COMMON_TARGETS="
aarch64
alpha
arm
cris
hppa
i386
m68k
microblaze
microblazeel
mips
mips64
mips64el
mipsel
nios2
or1k
ppc
ppc64
riscv32
riscv64
s390x
sh4
sh4eb
sparc
sparc64
x86_64
xtensa
xtensaeb
"
IUSE_SOFTMMU_TARGETS="
${COMMON_TARGETS}
avr
lm32
moxie
rx
tricore
unicore32
"
IUSE_USER_TARGETS="
${COMMON_TARGETS}
aarch64_be
armeb
hexagon
mipsn32
mipsn32el
ppc64abi32
ppc64le
sparc32plus
"
use_softmmu_targets=$(printf ' qemu_softmmu_targets_%s' ${IUSE_SOFTMMU_TARGETS})
use_user_targets=$(printf ' qemu_user_targets_%s' ${IUSE_USER_TARGETS})
IUSE+=" ${use_softmmu_targets} ${use_user_targets}"
RESTRICT="!test? ( test )"
# Allow no targets to be built so that people can get a tools-only build.
# Block USE flag configurations known to not work.
REQUIRED_USE="${PYTHON_REQUIRED_USE}
qemu_softmmu_targets_arm? ( fdt )
qemu_softmmu_targets_microblaze? ( fdt )
qemu_softmmu_targets_mips64el? ( fdt )
qemu_softmmu_targets_ppc64? ( fdt )
qemu_softmmu_targets_ppc? ( fdt )
qemu_softmmu_targets_riscv32? ( fdt )
qemu_softmmu_targets_riscv64? ( fdt )
static? ( static-user !alsa !gtk !jack !opengl !pulseaudio !plugins !rbd !snappy )
static-user? ( !plugins )
vhost-user-fs? ( caps seccomp )
virtfs? ( caps xattr )
vte? ( gtk )
multipath? ( udev )
plugins? ( !static !static-user )
"
# Dependencies required for qemu tools (qemu-nbd, qemu-img, qemu-io, ...)
# and user/softmmu targets (qemu-*, qemu-system-*).
#
# Yep, you need both libcap and libcap-ng since virtfs only uses libcap.
#
# The attr lib isn't always linked in (although the USE flag is always
# respected). This is because qemu supports using the C library's API
# when available rather than always using the external library.
ALL_DEPEND="
>=dev-libs/glib-2.0[static-libs(+)]
sys-libs/zlib[static-libs(+)]
python? ( ${PYTHON_DEPS} )
systemtap? ( dev-util/systemtap )
xattr? ( sys-apps/attr[static-libs(+)] )"
# Dependencies required for qemu tools (qemu-nbd, qemu-img, qemu-io, ...)
# softmmu targets (qemu-system-*).
SOFTMMU_TOOLS_DEPEND="
dev-libs/libxml2[static-libs(+)]
>=x11-libs/pixman-0.28.0[static-libs(+)]
accessibility? (
app-accessibility/brltty[api]
app-accessibility/brltty[static-libs(+)]
)
aio? ( dev-libs/libaio[static-libs(+)] )
alsa? ( >=media-libs/alsa-lib-1.0.13 )
bzip2? ( app-arch/bzip2[static-libs(+)] )
capstone? ( dev-libs/capstone:= )
caps? ( sys-libs/libcap-ng[static-libs(+)] )
curl? ( >=net-misc/curl-7.15.4[static-libs(+)] )
fdt? ( >=sys-apps/dtc-1.5.0[static-libs(+)] )
glusterfs? ( >=sys-cluster/glusterfs-3.4.0[static-libs(+)] )
gnutls? (
dev-libs/nettle:=[static-libs(+)]
>=net-libs/gnutls-3.0:=[static-libs(+)]
)
gtk? (
x11-libs/gtk+:3
vte? ( x11-libs/vte:2.91 )
)
infiniband? (
sys-fabric/libibumad:=[static-libs(+)]
sys-fabric/libibverbs:=[static-libs(+)]
sys-fabric/librdmacm:=[static-libs(+)]
)
iscsi? ( net-libs/libiscsi )
io-uring? ( sys-libs/liburing:=[static-libs(+)] )
jack? ( virtual/jack )
jemalloc? ( dev-libs/jemalloc )
jpeg? ( virtual/jpeg:0=[static-libs(+)] )
lzo? ( dev-libs/lzo:2[static-libs(+)] )
multipath? ( sys-fs/multipath-tools )
ncurses? (
sys-libs/ncurses:0=[unicode]
sys-libs/ncurses:0=[static-libs(+)]
)
nfs? ( >=net-fs/libnfs-1.9.3:=[static-libs(+)] )
numa? ( sys-process/numactl[static-libs(+)] )
opengl? (
virtual/opengl
media-libs/libepoxy[static-libs(+)]
media-libs/mesa[static-libs(+)]
media-libs/mesa[egl,gbm]
)
png? ( media-libs/libpng:0=[static-libs(+)] )
pulseaudio? ( media-sound/pulseaudio )
rbd? ( sys-cluster/ceph )
sasl? ( dev-libs/cyrus-sasl[static-libs(+)] )
sdl? (
media-libs/libsdl2[video]
media-libs/libsdl2[static-libs(+)]
)
sdl-image? ( media-libs/sdl2-image[static-libs(+)] )
seccomp? ( >=sys-libs/libseccomp-2.1.0[static-libs(+)] )
slirp? ( net-libs/libslirp[static-libs(+)] )
smartcard? ( >=app-emulation/libcacard-2.5.0[static-libs(+)] )
snappy? ( app-arch/snappy:= )
spice? (
>=app-emulation/spice-protocol-0.12.3
>=app-emulation/spice-0.12.0[static-libs(+)]
)
ssh? ( >=net-libs/libssh-0.8.6[static-libs(+)] )
udev? ( virtual/libudev[static-libs(+)] )
usb? ( >=virtual/libusb-1-r2[static-libs(+)] )
usbredir? ( >=sys-apps/usbredir-0.6[static-libs(+)] )
vde? ( net-misc/vde[static-libs(+)] )
virgl? ( media-libs/virglrenderer[static-libs(+)] )
virtfs? ( sys-libs/libcap )
xen? ( app-emulation/xen-tools:= )
xfs? ( sys-fs/xfsprogs[static-libs(+)] )
zstd? ( >=app-arch/zstd-1.4.0[static-libs(+)] )
"
SEABIOS_VERSION="1.14.0"
X86_FIRMWARE_DEPEND="
pin-upstream-blobs? (
~sys-firmware/edk2-ovmf-202008[binary]
~sys-firmware/ipxe-1.21.1[binary,qemu]
~sys-firmware/seabios-${SEABIOS_VERSION}[binary,seavgabios]
~sys-firmware/sgabios-0.1_pre10[binary]
)
!pin-upstream-blobs? (
sys-firmware/edk2-ovmf
sys-firmware/ipxe[qemu]
>=sys-firmware/seabios-${SEABIOS_VERSION}[seavgabios]
sys-firmware/sgabios
)"
PPC_FIRMWARE_DEPEND="
pin-upstream-blobs? (
~sys-firmware/seabios-${SEABIOS_VERSION}[binary,seavgabios]
)
!pin-upstream-blobs? (
>=sys-firmware/seabios-${SEABIOS_VERSION}[seavgabios]
)
"
BDEPEND="
$(python_gen_impl_dep)
dev-lang/perl
sys-apps/texinfo
virtual/pkgconfig
doc? ( dev-python/sphinx )
gtk? ( nls? ( sys-devel/gettext ) )
test? (
dev-libs/glib[utils]
sys-devel/bc
)
"
CDEPEND="
!static? (
${ALL_DEPEND//\[static-libs(+)]}
${SOFTMMU_TOOLS_DEPEND//\[static-libs(+)]}
)
qemu_softmmu_targets_i386? ( ${X86_FIRMWARE_DEPEND} )
qemu_softmmu_targets_x86_64? ( ${X86_FIRMWARE_DEPEND} )
qemu_softmmu_targets_ppc? ( ${PPC_FIRMWARE_DEPEND} )
qemu_softmmu_targets_ppc64? ( ${PPC_FIRMWARE_DEPEND} )
"
DEPEND="${CDEPEND}
kernel_linux? ( >=sys-kernel/linux-headers-2.6.35 )
static? (
${ALL_DEPEND}
${SOFTMMU_TOOLS_DEPEND}
)
static-user? ( ${ALL_DEPEND} )"
RDEPEND="${CDEPEND}
acct-group/kvm
selinux? ( sec-policy/selinux-qemu )"
PATCHES=(
"${FILESDIR}"/${PN}-2.11.1-capstone_include_path.patch
"${FILESDIR}"/${PN}-5.2.0-strings.patch
"${FILESDIR}"/${PN}-5.2.0-cleaner-werror.patch
"${FILESDIR}"/${PN}-5.2.0-disable-keymap.patch
"${FILESDIR}"/${PN}-5.2.0-dce-locks.patch
)
QA_PREBUILT="
usr/share/qemu/hppa-firmware.img
usr/share/qemu/openbios-ppc
usr/share/qemu/openbios-sparc64
usr/share/qemu/openbios-sparc32
usr/share/qemu/opensbi-riscv64-generic-fw_dynamic.elf
usr/share/qemu/opensbi-riscv32-generic-fw_dynamic.elf
usr/share/qemu/palcode-clipper
usr/share/qemu/s390-ccw.img
usr/share/qemu/s390-netboot.img
usr/share/qemu/u-boot.e500
"
QA_WX_LOAD="usr/bin/qemu-i386
usr/bin/qemu-x86_64
usr/bin/qemu-alpha
usr/bin/qemu-arm
usr/bin/qemu-cris
usr/bin/qemu-m68k
usr/bin/qemu-microblaze
usr/bin/qemu-microblazeel
usr/bin/qemu-mips
usr/bin/qemu-mipsel
usr/bin/qemu-or1k
usr/bin/qemu-ppc
usr/bin/qemu-ppc64
usr/bin/qemu-ppc64abi32
usr/bin/qemu-sh4
usr/bin/qemu-sh4eb
usr/bin/qemu-sparc
usr/bin/qemu-sparc64
usr/bin/qemu-armeb
usr/bin/qemu-sparc32plus
usr/bin/qemu-s390x
usr/bin/qemu-unicore32
"
DOC_CONTENTS="If you don't have kvm compiled into the kernel, make sure you have the
kernel module loaded before running kvm. The easiest way to ensure that the
kernel module is loaded is to load it on boot.
For AMD CPUs the module is called 'kvm-amd'.
For Intel CPUs the module is called 'kvm-intel'.
Please review /etc/conf.d/modules for how to load these.
Make sure your user is in the 'kvm' group. Just run
$ gpasswd -a <USER> kvm
then have <USER> re-login.
For brand new installs, the default permissions on /dev/kvm might not let
you access it. You can tell udev to reset ownership/perms:
$ udevadm trigger -c add /dev/kvm
If you want to register binfmt handlers for qemu user targets:
For openrc:
# rc-update add qemu-binfmt
For systemd:
# ln -s /usr/share/qemu/binfmt.d/qemu.conf /etc/binfmt.d/qemu.conf"
pkg_pretend() {
if use kernel_linux && kernel_is lt 2 6 25; then
eerror "This version of KVM requires a host kernel of 2.6.25 or higher."
elif use kernel_linux; then
if ! linux_config_exists; then
eerror "Unable to check your kernel for KVM support"
else
CONFIG_CHECK="~KVM ~TUN ~BRIDGE"
ERROR_KVM="You must enable KVM in your kernel to continue"
ERROR_KVM_AMD="If you have an AMD CPU, you must enable KVM_AMD in"
ERROR_KVM_AMD+=" your kernel configuration."
ERROR_KVM_INTEL="If you have an Intel CPU, you must enable"
ERROR_KVM_INTEL+=" KVM_INTEL in your kernel configuration."
ERROR_TUN="You will need the Universal TUN/TAP driver compiled"
ERROR_TUN+=" into your kernel or loaded as a module to use the"
ERROR_TUN+=" virtual network device if using -net tap."
ERROR_BRIDGE="You will also need support for 802.1d"
ERROR_BRIDGE+=" Ethernet Bridging for some network configurations."
use vhost-net && CONFIG_CHECK+=" ~VHOST_NET"
ERROR_VHOST_NET="You must enable VHOST_NET to have vhost-net"
ERROR_VHOST_NET+=" support"
if use amd64 || use x86 || use amd64-linux || use x86-linux; then
if grep -q AuthenticAMD /proc/cpuinfo; then
CONFIG_CHECK+=" ~KVM_AMD"
elif grep -q GenuineIntel /proc/cpuinfo; then
CONFIG_CHECK+=" ~KVM_INTEL"
fi
fi
use python && CONFIG_CHECK+=" ~DEBUG_FS"
ERROR_DEBUG_FS="debugFS support required for kvm_stat"
# Now do the actual checks setup above
check_extra_config
fi
fi
if grep -qs '/usr/bin/qemu-kvm' "${EROOT}"/etc/libvirt/qemu/*.xml; then
eerror "The kvm/qemu-kvm wrappers no longer exist, but your libvirt"
eerror "instances are still pointing to it. Please update your"
eerror "configs in /etc/libvirt/qemu/ to use the -enable-kvm flag"
eerror "and the right system binary (e.g. qemu-system-x86_64)."
die "update your virt configs to not use qemu-kvm"
fi
}
# Sanity check to make sure target lists are kept up-to-date.
check_targets() {
local var=$1 mak=$2
local detected sorted
pushd "${S}"/default-configs/targets/ >/dev/null || die
# Force C locale until glibc is updated. #564936
detected=$(echo $(printf '%s\n' *-${mak}.mak | sed "s:-${mak}.mak::" | LC_COLLATE=C sort -u))
sorted=$(echo $(printf '%s\n' ${!var} | LC_COLLATE=C sort -u))
if [[ ${sorted} != "${detected}" ]] ; then
eerror "The ebuild needs to be kept in sync."
eerror "${var}: ${sorted}"
eerror "$(printf '%-*s' ${#var} configure): ${detected}"
die "sync ${var} to the list of targets"
fi
popd >/dev/null
}
src_prepare() {
check_targets IUSE_SOFTMMU_TARGETS softmmu
check_targets IUSE_USER_TARGETS linux-user
default
# Use correct toolchain to fix cross-compiling
tc-export AR AS LD NM OBJCOPY PKG_CONFIG RANLIB STRINGS
export WINDRES=${CHOST}-windres
# Verbose builds
MAKEOPTS+=" V=1"
# Remove bundled copy of libfdt
rm -r dtc || die
}
##
# configures qemu based on the build directory and the build type
# we are using.
#
qemu_src_configure() {
debug-print-function ${FUNCNAME} "$@"
local buildtype=$1
local builddir="${S}/${buildtype}-build"
mkdir "${builddir}"
local conf_opts=(
--prefix=/usr
--sysconfdir=/etc
--bindir=/usr/bin
--libdir=/usr/$(get_libdir)
--datadir=/usr/share
--docdir=/usr/share/doc/${PF}/html
--mandir=/usr/share/man
--localstatedir=/var
--disable-bsd-user
--disable-containers # bug #732972
--disable-guest-agent
--disable-strip
# bug #746752: TCG interpreter has a few limitations:
# - it does not support FPU
# - it's generally slower on non-self-modifying code
# It's advantage is support for host architectures
# where native codegeneration is not implemented.
# Gentoo has qemu keyworded only on targets with
# native code generation available. Avoid the interpreter.
--disable-tcg-interpreter
--disable-werror
# We support gnutls/nettle for crypto operations. It is possible
# to use gcrypt when gnutls/nettle are disabled (but not when they
# are enabled), but it's not really worth the hassle. Disable it
# all the time to avoid automatically detecting it. #568856
--disable-gcrypt
--python="${PYTHON}"
--cc="$(tc-getCC)"
--cxx="$(tc-getCXX)"
--host-cc="$(tc-getBUILD_CC)"
$(use_enable debug debug-info)
$(use_enable debug debug-tcg)
$(use_enable doc docs)
$(use_enable nls gettext)
$(use_enable plugins)
$(use_enable xattr attr)
)
# Disable options not used by user targets. This simplifies building
# static user targets (USE=static-user) considerably.
conf_notuser() {
if [[ ${buildtype} == "user" ]] ; then
echo "--disable-${2:-$1}"
else
use_enable "$@"
fi
}
# Enable option only for softmmu build, but not 'user' or 'tools'
conf_softmmu() {
if [[ ${buildtype} == "softmmu" ]] ; then
use_enable "$@"
else
echo "--disable-${2:-$1}"
fi
}
# Enable option only for tools build, but not 'user' or 'softmmu'
conf_tools() {
if [[ ${buildtype} == "tools" ]] ; then
use_enable "$@"
else
echo "--disable-${2:-$1}"
fi
}
conf_opts+=(
$(conf_notuser accessibility brlapi)
$(conf_notuser aio linux-aio)
$(conf_notuser bzip2)
$(conf_notuser capstone)
$(conf_notuser caps cap-ng)
$(conf_notuser curl)
$(conf_notuser fdt)
$(conf_notuser glusterfs)
$(conf_notuser gnutls)
$(conf_notuser gnutls nettle)
$(conf_notuser gtk)
$(conf_notuser infiniband rdma)
$(conf_notuser iscsi libiscsi)
$(conf_notuser io-uring linux-io-uring)
$(conf_notuser jemalloc jemalloc)
$(conf_notuser jpeg vnc-jpeg)
$(conf_notuser kernel_linux kvm)
$(conf_notuser lzo)
$(conf_notuser multipath mpath)
$(conf_notuser ncurses curses)
$(conf_notuser nfs libnfs)
$(conf_notuser numa)
$(conf_notuser opengl)
$(conf_notuser png vnc-png)
$(conf_notuser rbd)
$(conf_notuser sasl vnc-sasl)
$(conf_notuser sdl)
$(conf_softmmu sdl-image)
$(conf_notuser seccomp)
$(conf_notuser slirp slirp system)
$(conf_notuser smartcard)
$(conf_notuser snappy)
$(conf_notuser spice)
$(conf_notuser ssh libssh)
$(conf_notuser udev libudev)
$(conf_notuser usb libusb)
$(conf_notuser usbredir usb-redir)
$(conf_notuser vde)
$(conf_notuser vhost-net)
$(conf_notuser vhost-user-fs)
$(conf_tools vhost-user-fs virtiofsd)
$(conf_notuser virgl virglrenderer)
$(conf_softmmu virtfs)
$(conf_notuser vnc)
$(conf_notuser vte)
$(conf_notuser xen)
$(conf_notuser xen xen-pci-passthrough)
$(conf_notuser xfs xfsctl)
# use prebuilt keymaps, bug #759604
--disable-xkbcommon
$(conf_notuser zstd)
)
if [[ ${buildtype} == "user" ]] ; then
conf_opts+=( --disable-libxml2 )
else
conf_opts+=( --enable-libxml2 )
fi
if [[ ! ${buildtype} == "user" ]] ; then
# audio options
local audio_opts=(
# Note: backend order matters here: #716202
# We iterate from higher-level to lower level.
$(usex pulseaudio pa "")
$(usev jack)
$(usev sdl)
$(usev alsa)
$(usev oss)
)
conf_opts+=(
--audio-drv-list=$(printf "%s," "${audio_opts[@]}")
)
fi
case ${buildtype} in
user)
conf_opts+=(
--enable-linux-user
--disable-system
--disable-blobs
--disable-tools
)
local static_flag="static-user"
;;
softmmu)
conf_opts+=(
--disable-linux-user
--enable-system
--disable-tools
)
local static_flag="static"
;;
tools)
conf_opts+=(
--disable-linux-user
--disable-system
--disable-blobs
--enable-tools
)
local static_flag="static"
;;
esac
local targets="${buildtype}_targets"
[[ -n ${targets} ]] && conf_opts+=( --target-list="${!targets}" )
# Add support for SystemTAP
use systemtap && conf_opts+=( --enable-trace-backend=dtrace )
# We always want to attempt to build with PIE support as it results
# in a more secure binary. But it doesn't work with static or if
# the current GCC doesn't have PIE support.
if use ${static_flag}; then
conf_opts+=( --static --disable-pie )
else
tc-enables-pie && conf_opts+=( --enable-pie )
fi
# Meson will not use a cross-file unless cross_prefix is set.
tc-is-cross-compiler && conf_opts+=( --cross-prefix="${CHOST}-" )
# Plumb through equivalent of EXTRA_ECONF to allow experiments
# like bug #747928.
conf_opts+=( ${EXTRA_CONF_QEMU} )
echo "../configure ${conf_opts[*]}"
cd "${builddir}"
../configure "${conf_opts[@]}" || die "configure failed"
# FreeBSD's kernel does not support QEMU assigning/grabbing
# host USB devices yet
use kernel_FreeBSD && \
sed -i -E -e "s|^(HOST_USB=)bsd|\1stub|" "${S}"/config-host.mak
}
src_configure() {
local target
python_setup
softmmu_targets= softmmu_bins=()
user_targets= user_bins=()
for target in ${IUSE_SOFTMMU_TARGETS} ; do
if use "qemu_softmmu_targets_${target}"; then
softmmu_targets+=",${target}-softmmu"
softmmu_bins+=( "qemu-system-${target}" )
fi
done
for target in ${IUSE_USER_TARGETS} ; do
if use "qemu_user_targets_${target}"; then
user_targets+=",${target}-linux-user"
user_bins+=( "qemu-${target}" )
fi
done
softmmu_targets=${softmmu_targets#,}
user_targets=${user_targets#,}
[[ -n ${softmmu_targets} ]] && qemu_src_configure "softmmu"
[[ -n ${user_targets} ]] && qemu_src_configure "user"
qemu_src_configure "tools"
}
src_compile() {
if [[ -n ${user_targets} ]]; then
cd "${S}/user-build"
default
fi
if [[ -n ${softmmu_targets} ]]; then
cd "${S}/softmmu-build"
default
fi
cd "${S}/tools-build"
default
}
src_test() {
if [[ -n ${softmmu_targets} ]]; then
cd "${S}/softmmu-build"
pax-mark m */qemu-system-* #515550
emake check
fi
}
qemu_python_install() {
python_domodule "${S}/python/qemu"
python_doscript "${S}/scripts/kvm/vmxcap"
python_doscript "${S}/scripts/qmp/qmp-shell"
python_doscript "${S}/scripts/qmp/qemu-ga-client"
}
# Generate binfmt support files.
# - /etc/init.d/qemu-binfmt script which registers the user handlers (openrc)
# - /usr/share/qemu/binfmt.d/qemu.conf (for use with systemd-binfmt)
generate_initd() {
local out="${T}/qemu-binfmt"
local out_systemd="${T}/qemu.conf"
local d="${T}/binfmt.d"
einfo "Generating qemu binfmt scripts and configuration files"
# Generate the debian fragments first.
mkdir -p "${d}"
"${S}"/scripts/qemu-binfmt-conf.sh \
--debian \
--exportdir "${d}" \
--qemu-path "${EPREFIX}/usr/bin" \
|| die
# Then turn the fragments into a shell script we can source.
sed -E -i \
-e 's:^([^ ]+) (.*)$:\1="\2":' \
"${d}"/* || die
# Generate the init.d script by assembling the fragments from above.
local f qcpu package interpreter magic mask
cat "${FILESDIR}"/qemu-binfmt.initd.head >"${out}" || die
for f in "${d}"/qemu-* ; do
source "${f}"
# Normalize the cpu logic like we do in the init.d for the native cpu.
qcpu=${package#qemu-}
case ${qcpu} in
arm*) qcpu="arm";;
mips*) qcpu="mips";;
ppc*) qcpu="ppc";;
s390*) qcpu="s390";;
sh*) qcpu="sh";;
sparc*) qcpu="sparc";;
esac
# we use 'printf' here to be portable across 'sh'
# implementations: #679168
cat <<EOF >>"${out}"
if [ "\${cpu}" != "${qcpu}" -a -x "${interpreter}" ] ; then
printf '%s\n' ':${package}:M::${magic}:${mask}:${interpreter}:'"\${QEMU_BINFMT_FLAGS}" >/proc/sys/fs/binfmt_misc/register
fi
EOF
echo ":${package}:M::${magic}:${mask}:${interpreter}:OC" >>"${out_systemd}"
done
cat "${FILESDIR}"/qemu-binfmt.initd.tail >>"${out}" || die
}
src_install() {
if [[ -n ${user_targets} ]]; then
cd "${S}/user-build"
emake DESTDIR="${ED}" install
# Install binfmt handler init script for user targets.
generate_initd
doinitd "${T}/qemu-binfmt"
# Install binfmt/qemu.conf.
insinto "/usr/share/qemu/binfmt.d"
doins "${T}/qemu.conf"
fi
if [[ -n ${softmmu_targets} ]]; then
cd "${S}/softmmu-build"
emake DESTDIR="${ED}" install
# This might not exist if the test failed. #512010
[[ -e check-report.html ]] && dodoc check-report.html
if use kernel_linux; then
udev_newrules "${FILESDIR}"/65-kvm.rules-r2 65-kvm.rules
fi
if use python; then
python_foreach_impl qemu_python_install
fi
fi
cd "${S}/tools-build"
emake DESTDIR="${ED}" install
# Disable mprotect on the qemu binaries as they use JITs to be fast #459348
pushd "${ED}"/usr/bin >/dev/null
pax-mark mr "${softmmu_bins[@]}" "${user_bins[@]}" # bug 575594
popd >/dev/null
# Install config file example for qemu-bridge-helper
insinto "/etc/qemu"
doins "${FILESDIR}/bridge.conf"
cd "${S}"
dodoc MAINTAINERS docs/specs/pci-ids.txt
newdoc pc-bios/README README.pc-bios
# Disallow stripping of prebuilt firmware files.
dostrip -x ${QA_PREBUILT}
if [[ -n ${softmmu_targets} ]]; then
# Remove SeaBIOS since we're using the SeaBIOS packaged one
rm "${ED}/usr/share/qemu/bios.bin"
rm "${ED}/usr/share/qemu/bios-256k.bin"
if use qemu_softmmu_targets_x86_64 || use qemu_softmmu_targets_i386; then
dosym ../seabios/bios.bin /usr/share/qemu/bios.bin
dosym ../seabios/bios-256k.bin /usr/share/qemu/bios-256k.bin
fi
# Remove vgabios since we're using the seavgabios packaged one
rm "${ED}/usr/share/qemu/vgabios.bin"
rm "${ED}/usr/share/qemu/vgabios-cirrus.bin"
rm "${ED}/usr/share/qemu/vgabios-qxl.bin"
rm "${ED}/usr/share/qemu/vgabios-stdvga.bin"
rm "${ED}/usr/share/qemu/vgabios-virtio.bin"
rm "${ED}/usr/share/qemu/vgabios-vmware.bin"
# PPC/PPC64 loads vgabios-stdvga
if use qemu_softmmu_targets_x86_64 || use qemu_softmmu_targets_i386 || use qemu_softmmu_targets_ppc || use qemu_softmmu_targets_ppc64; then
dosym ../seavgabios/vgabios-isavga.bin /usr/share/qemu/vgabios.bin
dosym ../seavgabios/vgabios-cirrus.bin /usr/share/qemu/vgabios-cirrus.bin
dosym ../seavgabios/vgabios-qxl.bin /usr/share/qemu/vgabios-qxl.bin
dosym ../seavgabios/vgabios-stdvga.bin /usr/share/qemu/vgabios-stdvga.bin
dosym ../seavgabios/vgabios-virtio.bin /usr/share/qemu/vgabios-virtio.bin
dosym ../seavgabios/vgabios-vmware.bin /usr/share/qemu/vgabios-vmware.bin
fi
# Remove sgabios since we're using the sgabios packaged one
rm "${ED}/usr/share/qemu/sgabios.bin"
if use qemu_softmmu_targets_x86_64 || use qemu_softmmu_targets_i386; then
dosym ../sgabios/sgabios.bin /usr/share/qemu/sgabios.bin
fi
# Remove iPXE since we're using the iPXE packaged one
rm "${ED}"/usr/share/qemu/pxe-*.rom
if use qemu_softmmu_targets_x86_64 || use qemu_softmmu_targets_i386; then
dosym ../ipxe/8086100e.rom /usr/share/qemu/pxe-e1000.rom
dosym ../ipxe/80861209.rom /usr/share/qemu/pxe-eepro100.rom
dosym ../ipxe/10500940.rom /usr/share/qemu/pxe-ne2k_pci.rom
dosym ../ipxe/10222000.rom /usr/share/qemu/pxe-pcnet.rom
dosym ../ipxe/10ec8139.rom /usr/share/qemu/pxe-rtl8139.rom
dosym ../ipxe/1af41000.rom /usr/share/qemu/pxe-virtio.rom
fi
fi
DISABLE_AUTOFORMATTING=true
readme.gentoo_create_doc
}
firmware_abi_change() {
local pv
for pv in ${REPLACING_VERSIONS}; do
if ver_test ${pv} -lt ${FIRMWARE_ABI_VERSION}; then
return 0
fi
done
return 1
}
pkg_postinst() {
if [[ -n ${softmmu_targets} ]] && use kernel_linux; then
udev_reload
fi
xdg_icon_cache_update
[[ -z ${EPREFIX} ]] && [[ -f ${EROOT}/usr/libexec/qemu-bridge-helper ]] && \
fcaps cap_net_admin ${EROOT}/usr/libexec/qemu-bridge-helper
DISABLE_AUTOFORMATTING=true
readme.gentoo_print_elog
if use pin-upstream-blobs && firmware_abi_change; then
ewarn "This version of qemu pins new versions of firmware blobs:"
ewarn " $(best_version sys-firmware/edk2-ovmf)"
ewarn " $(best_version sys-firmware/ipxe)"
ewarn " $(best_version sys-firmware/seabios)"
ewarn " $(best_version sys-firmware/sgabios)"
ewarn "This might break resume of hibernated guests (started with a different"
ewarn "firmware version) and live migration to/from qemu versions with different"
ewarn "firmware. Please (cold) restart all running guests. For functional"
ewarn "guest migration ensure that all"
ewarn "hosts run at least"
ewarn " app-emulation/qemu-${FIRMWARE_ABI_VERSION}."
fi
}
pkg_info() {
echo "Using:"
echo " $(best_version app-emulation/spice-protocol)"
echo " $(best_version sys-firmware/edk2-ovmf)"
if has_version 'sys-firmware/edk2-ovmf[binary]'; then
echo " USE=binary"
else
echo " USE=''"
fi
echo " $(best_version sys-firmware/ipxe)"
echo " $(best_version sys-firmware/seabios)"
if has_version 'sys-firmware/seabios[binary]'; then
echo " USE=binary"
else
echo " USE=''"
fi
echo " $(best_version sys-firmware/sgabios)"
}
pkg_postrm() {
xdg_icon_cache_update
}

@ -1,2 +1,3 @@
DIST VBoxGuestAdditions_6.1.18.iso 61157376 BLAKE2B e022cfbc70fa45889c1db7592f30814faf88d7614c30ebd3fccd0127732d7fec51423904a160797ac199315dcbe4791f025e2dc4754141bfef0862b11510626c SHA512 07be8be75feb2d7d9bfc984ce34b955339d391580192817c2eb216b7577576a003dde310cc09f18c6b6bcf2e30ad548e1ee8bde0af420e4d1d43a3486861cf19
DIST VBoxGuestAdditions_6.1.20.iso 61018112 BLAKE2B feb6a292b05e861a90fdc5db80bc15e9df593a365a866a31ab7afce704511463012c18d76dc928dc5ecd0d2a23bc518c37ad9cdc8b4b72397af3ddd4b3eb97d8 SHA512 122bd5d31ab5cac2fe0582d1d541b5e9d0e8e544e1b3c5afb2b2e2c8b26fbfa964d15053ccc256575753d31206bffc09380dabc79d93946b0e56b743d82e40fe
DIST VBoxGuestAdditions_6.1.22.iso 61020160 BLAKE2B e6b79942ed905654ac98323fe5c960afe7467e4ee9da168f7a7b4856a001fa973418e979da57b6e75eedd801bd71f15700ac62a2dfac28b660b36b11287fab57 SHA512 826a4b7d714d1dcb3e7c5c3c95e2a47d2fef728172f2db0e9c983150d7cc335ca7ffd2c87c09e1ca3d0fb1342f4c6c03993f5fc8cff19f28e1f519dec0f3f96b

@ -0,0 +1,34 @@
# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
MY_PN=VBoxGuestAdditions
MY_PV="${PV/beta/BETA}"
MY_PV="${MY_PV/rc/RC}"
MY_P=${MY_PN}_${MY_PV}
DESCRIPTION="CD image containing guest additions for VirtualBox"
HOMEPAGE="https://www.virtualbox.org/"
SRC_URI="https://download.virtualbox.org/virtualbox/${MY_PV}/${MY_P}.iso"
LICENSE="GPL-2+ LGPL-2.1+ MIT SGI-B-2.0 CDDL"
SLOT="0/$(ver_cut 1-2)"
[[ "${PV}" == *_beta* ]] || [[ "${PV}" == *_rc* ]] || \
KEYWORDS="~amd64"
IUSE=""
RESTRICT="mirror"
RDEPEND="!app-emulation/virtualbox-bin
!=app-emulation/virtualbox-9999"
S="${WORKDIR}"
src_unpack() {
return 0
}
src_install() {
insinto /usr/share/${PN/-additions}
newins "${DISTDIR}"/${MY_P}.iso ${MY_PN}.iso
}

@ -1,2 +1,3 @@
DIST Oracle_VM_VirtualBox_Extension_Pack-6.1.18-142142.tar.gz 11157510 BLAKE2B d9ee20abac79ed5de03c39d1e6af3a5f18c5416149e9e64ebe9dfc4a937bd72b6590a2daaccc820e3ee6c6efcfd0c1c8e29bf3844cbbb929f13052415e16f2bb SHA512 3686b1c5dbdc5b28c172b4885c30ca9a444bc10dc7984df14a17e1dcc571456b06e80ad38e1409de8692c483c56f397162a53bd3dc6956d9ca91875fda0bda4e
DIST Oracle_VM_VirtualBox_Extension_Pack-6.1.20-143896.tar.gz 11132930 BLAKE2B a26e05d9869a52187b379b24ed556c6296772d1360b6f7d61afe17c2818351b5ee2256398e0d53a16d2b6014540f343f7f13539c3d5529f079ac363b48ea0d6e SHA512 85cd8327860c253ce2f871dd1138d18d97b8706f64a3dafaaf340a43d8f44f7ee696a1f845761e7c8d6dcf11c7afd1618798194482b6e09cbe7e2657d980116a
DIST Oracle_VM_VirtualBox_Extension_Pack-6.1.22-144080.tar.gz 11133865 BLAKE2B f0db84695d94d914afd22086ced2a2ca73f860a0bc91bc11744e2cc4a3203584b06f7c855053e33c5f775bc7f6db08b7400f5eeea89566b9146dd144ccf1a2f9 SHA512 71dc1a82b9b88f615ecc7172df344042366a9303115cf44685ea96e3e729b8280edd36377b207fdbbf8adb388d1ec9b21c3ee709cf44aeb52d6811b26fa69a80

@ -0,0 +1,43 @@
# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit multilib
MAIN_PV="$(ver_cut 1-3)"
if [[ ${PV} = *_beta* ]] || [[ ${PV} = *_rc* ]] ; then
MY_PV="${MAIN_PV}_$(ver_cut 5-6)"
DEP_PV="${MY_PV}"
MY_PV="${MY_PV/beta/BETA}"
MY_PV="${MY_PV/rc/RC}"
else
MY_PV="${MAIN_PV}"
DEP_PV="${MAIN_PV}"
fi
VBOX_BUILD_ID="$(ver_cut 4)"
MY_PN="Oracle_VM_VirtualBox_Extension_Pack"
MY_P="${MY_PN}-${MY_PV}-${VBOX_BUILD_ID}"
DESCRIPTION="PUEL extensions for VirtualBox"
HOMEPAGE="https://www.virtualbox.org/"
SRC_URI="https://download.virtualbox.org/virtualbox/${MY_PV}/${MY_P}.vbox-extpack -> ${MY_P}.tar.gz"
LICENSE="PUEL"
SLOT="0/$(ver_cut 1-2)"
[[ "${PV}" == *_beta* ]] || [[ "${PV}" == *_rc* ]] || \
KEYWORDS="~amd64"
IUSE=""
RESTRICT="bindist mirror strip"
RDEPEND="=app-emulation/virtualbox-${DEP_PV}*"
S="${WORKDIR}"
QA_PREBUILT="/usr/lib*/virtualbox/ExtensionPacks/${MY_PN}/.*"
src_install() {
insinto /usr/$(get_libdir)/virtualbox/ExtensionPacks/${MY_PN}
doins -r linux.${ARCH}
doins ExtPack* PXE-Intel.rom
}

@ -1,3 +1,4 @@
DIST VirtualBox-6.1.18.tar.bz2 165507486 BLAKE2B 3cf18f30671426f533838eb0579928b08ce022b832d509e70274978efce2e3e0e14dc8fbf258ef9a1ce8a3d666081863aa6971340e04600434f58136fe5c221a SHA512 41cb4bd42429b09836c59ef9867dd3d35d0d5512ff6e515a7f8688ed444c079ce353a84f0d45b607ccf08424782d5de09b264f51b2c41a9ec34eb834458c293c
DIST VirtualBox-6.1.20.tar.bz2 165569564 BLAKE2B cf8c110e78e7d7bef3e3243a8966f4d816dacc8dad6cc44737023a13f1b89dfb50661f6dabc742f328e5c03556ec82e7a22f5c1b97cfef774652ec901e733e5d SHA512 b5af4e04e1a52c85b20226a274fac93712b79d426c0268cce3f2a337616a03161a55522ecddd13844bfc24a6808ba3d651366e74ce657cc6f8fd64c34ae745a4
DIST VirtualBox-6.1.22.tar.bz2 165560989 BLAKE2B 871c2189827174561a2abce4d52056db892e596bcff76274770b43157cca93d2be9a3458ad3d41cca81d73d95f1db37e2d15fdbc192f4d5a59e3cc9b6365d3f6 SHA512 ab0fc7cea455f74598d5da18528404405221e9c96a34f0355a39187524240596db4b54e1b1af5f152d5329b8e7977218819c0605f0d0ba0d83a1fb8f8487548d
DIST virtualbox-6.1.12-patches-01.tar.xz 2528 BLAKE2B a5d7cde0daea41bee2e40e46569c725769927a31865d99d13b8b13c4903e59b4097f85da15dc592b9c7e8baf8ff805397af827620f107ba09a468b4d1198ecab SHA512 f71d10a9fbce99c3f631ef30bcfa9d0e017e702ac509541b039e08ccbcd024beb93fde09c43d90af5d9d28f6842a7947f20e7950d3897da3e6d57859657e1123

@ -0,0 +1,221 @@
# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit linux-mod systemd toolchain-funcs
MY_PN="VirtualBox"
MY_PV="${PV/beta/BETA}"
MY_PV="${MY_PV/rc/RC}"
MY_P="${MY_PN}-${MY_PV}"
[[ "${PV}" == *a ]] && DIR_PV="$(ver_cut 1-3)"
DESCRIPTION="VirtualBox kernel modules and user-space tools for Gentoo guests"
HOMEPAGE="https://www.virtualbox.org/"
SRC_URI="https://download.virtualbox.org/virtualbox/${DIR_PV:-${MY_PV}}/${MY_P}.tar.bz2
https://dev.gentoo.org/~polynomial-c/virtualbox/patchsets/virtualbox-6.1.12-patches-01.tar.xz"
LICENSE="GPL-2"
SLOT="0/$(ver_cut 1-2)"
[[ "${PV}" == *_beta* ]] || [[ "${PV}" == *_rc* ]] || \
KEYWORDS="~amd64 ~x86"
IUSE="X"
# automount Error: VBoxServiceAutoMountWorker: Group "vboxsf" does not exist
RDEPEND="
acct-group/vboxguest
acct-group/vboxsf
acct-user/vboxguest
X? ( x11-apps/xrandr
x11-apps/xrefresh
x11-libs/libXmu
x11-libs/libX11
x11-libs/libXt
x11-libs/libXext
x11-libs/libXau
x11-libs/libXdmcp
x11-libs/libSM
x11-libs/libICE )
sys-apps/dbus
"
DEPEND="
${RDEPEND}
>=dev-util/kbuild-0.1.9998.3127
>=dev-lang/yasm-0.6.2
sys-devel/bin86
sys-libs/pam
sys-power/iasl
x11-base/xorg-proto
"
PDEPEND="
X? ( x11-drivers/xf86-video-vboxvideo )
"
BUILD_TARGETS="all"
BUILD_TARGET_ARCH="${ARCH}"
S="${WORKDIR}/${MY_PN}-${DIR_PV:-${PV}}"
VBOX_MOD_SRC_DIR="${S}/out/linux.${ARCH}/release/bin/additions/src"
pkg_setup() {
export DISTCC_DISABLE=1 #674256
MODULE_NAMES="vboxguest(misc:${VBOX_MOD_SRC_DIR}/vboxguest:${VBOX_MOD_SRC_DIR}/vboxguest)
vboxsf(misc:${VBOX_MOD_SRC_DIR}/vboxsf:${VBOX_MOD_SRC_DIR}/vboxsf)"
use X && MODULE_NAMES+=" vboxvideo(misc:${VBOX_MOD_SRC_DIR}/vboxvideo::${VBOX_MOD_SRC_DIR}/vboxvideo)"
linux-mod_pkg_setup
BUILD_PARAMS="KERN_DIR=/lib/modules/${KV_FULL}/build KERNOUT=${KV_OUT_DIR} KBUILD_EXTRA_SYMBOLS=${S}/Module.symvers"
}
src_prepare() {
# Remove shipped binaries (kBuild,yasm), see bug #232775
rm -r kBuild/bin tools || die
# Provide kernel sources
pushd src/VBox/Additions &>/dev/null || die
ebegin "Extracting guest kernel module sources"
kmk GuestDrivers-src vboxguest-src vboxsf-src vboxvideo-src &>/dev/null || die
eend
popd &>/dev/null || die
# PaX fixes (see bug #298988)
pushd "${VBOX_MOD_SRC_DIR}" &>/dev/null || die
eapply "${FILESDIR}"/vboxguest-6.0.6-log-use-c99.patch
popd &>/dev/null || die
# Disable things unused or splitted into separate ebuilds
cp "${FILESDIR}/${PN}-5-localconfig" LocalConfig.kmk || die
use X || echo "VBOX_WITH_X11_ADDITIONS :=" >> LocalConfig.kmk
# Remove pointless GCC version check
sed -e '/^check_gcc$/d' -i configure || die
eapply "${WORKDIR}/patches"
eapply_user
}
src_configure() {
# build the user-space tools, warnings are harmless
local cmd=(
./configure
--nofatal
--disable-xpcom
--disable-sdl-ttf
--disable-pulse
--disable-alsa
--with-gcc="$(tc-getCC)"
--with-g++="$(tc-getCXX)"
--target-arch=${ARCH}
--with-linux="${KV_OUT_DIR}"
--build-headless
)
echo "${cmd[@]}"
"${cmd[@]}" || die "configure failed"
source ./env.sh
export VBOX_GCC_OPT="${CFLAGS} ${CPPFLAGS}"
}
src_compile() {
MAKE="kmk" emake \
VBOX_BUILD_PUBLISHER=_Gentoo \
TOOL_GXX3_CC="$(tc-getCC)" TOOL_GXX3_CXX="$(tc-getCXX)" \
TOOL_GXX3_LD="$(tc-getCXX)" VBOX_GCC_OPT="${CXXFLAGS}" \
TOOL_YASM_AS=yasm \
VBOX_ONLY_ADDITIONS=1 \
KBUILD_VERBOSE=2
# Now creating the kernel modules. We must do this _after_
# we compiled the user-space tools as we need two of the
# automatically generated header files. (>=3.2.0)
linux-mod_src_compile
}
src_install() {
linux-mod_src_install
cd "${S}"/out/linux.${ARCH}/release/bin/additions || die
insinto /sbin
newins mount.vboxsf mount.vboxsf
fperms 4755 /sbin/mount.vboxsf
newinitd "${FILESDIR}"/${PN}-8.initd-r1 ${PN}
insinto /usr/sbin/
newins VBoxService vboxguest-service
fperms 0755 /usr/sbin/vboxguest-service
insinto /usr/bin
doins VBoxControl
fperms 0755 /usr/bin/VBoxControl
# VBoxClient user service and xrandr wrapper
if use X ; then
doins VBoxClient
fperms 0755 /usr/bin/VBoxClient
pushd "${S}"/src/VBox/Additions/x11/Installer &>/dev/null \
|| die
newins 98vboxadd-xclient VBoxClient-all
fperms 0755 /usr/bin/VBoxClient-all
popd &>/dev/null || die
fi
# udev rule for vboxdrv
local udev_rules_dir="/lib/udev/rules.d"
dodir ${udev_rules_dir}
echo 'KERNEL=="vboxguest", OWNER="vboxguest", GROUP="vboxguest", MODE="0660"' \
>> "${ED}/${udev_rules_dir}/60-virtualbox-guest-additions.rules" \
|| die
echo 'KERNEL=="vboxuser", OWNER="vboxguest", GROUP="vboxguest", MODE="0660"' \
>> "${ED}/${udev_rules_dir}/60-virtualbox-guest-additions.rules" \
|| die
# VBoxClient autostart file
insinto /etc/xdg/autostart
doins "${FILESDIR}"/vboxclient.desktop
# sample xorg.conf
dodoc "${FILESDIR}"/xorg.conf.vbox
docompress -x "${ED}"/usr/share/doc/${PF}/xorg.conf.vbox
systemd_dounit "${FILESDIR}/${PN}.service"
}
pkg_postinst() {
linux-mod_pkg_postinst
if ! use X ; then
elog "use flag X is off, enable it to install the"
elog "X Window System video driver."
fi
elog ""
elog "Please add users to the \"vboxguest\" group so they can"
elog "benefit from seamless mode, auto-resize and clipboard."
elog ""
elog "The vboxsf group has been added to make automount services work."
elog "These services are part of the shared folders support."
elog ""
elog "Please add:"
elog "/etc/init.d/${PN}"
elog "to the default runlevel in order to start"
elog "needed services."
elog "To use the VirtualBox X driver, use the following"
elog "file as your /etc/X11/xorg.conf:"
elog " /usr/share/doc/${PF}/xorg.conf.vbox"
elog ""
elog "Also make sure you use the Mesa library for OpenGL:"
elog " eselect opengl set xorg-x11"
elog ""
elog "An autostart .desktop file has been installed to start"
elog "VBoxClient in desktop sessions."
elog ""
elog "You can mount shared folders with:"
elog " mount -t vboxsf <shared_folder_name> <mount_point>"
elog ""
elog "Warning:"
elog "this ebuild is only needed if you are running gentoo"
elog "inside a VirtualBox Virtual Machine, you don't need"
elog "it to run VirtualBox itself."
elog ""
}

@ -1,2 +1,3 @@
DIST vbox-kernel-module-src-6.1.18.tar.xz 672004 BLAKE2B 7199ba2a5020e5ab51d82735df16aee78ece74db232733b932c380f90dffd589a72613120bbd5c580381ab6f6308abb8d12f69855b9c0a8345bfb8587d022019 SHA512 49b54898b2701774fdeec0cd99dd51a1dd71ffd9be38e125fde73f0c64a697138d13bddbb0ed0e9582d354fa0394608084effb68bd35b266c87f6e3b44c6f342
DIST vbox-kernel-module-src-6.1.20.tar.xz 672188 BLAKE2B 0b2ef1e02ce6f55211703946dc53df0fe949a94bac2caf050d31a78e674c2934d5cfaf788da2246000d1dc99218a572cb02272a1a92f4df913fcf7635b65a98b SHA512 4fdc16258ec03c720c81b62c680addcbde8257a58a94b3bca8eefd378c126833d84f7f4fa7bb76fcd7c761983f8626d121b2d31d761f608ca7cce6a689ec0469
DIST vbox-kernel-module-src-6.1.22.tar.xz 672348 BLAKE2B 331f81c370c24487f4966c745a72329065df2cc22918d03edefdf546d8e4ff0a36404ce98f1012faaacc301cd2c507b055db69b9125f91ad87fa5fde14d3abe0 SHA512 b50d7699db8909ea4e9126715152336a2c46e06f9fc24b5ef0624e7d26de1c83b2a57b0387dab0a46a9e50f9906126cfdcae4f290599de88a980adaff7fba180

@ -0,0 +1,55 @@
# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
# XXX: the tarball here is just the kernel modules split out of the binary
# package that comes from virtualbox-bin
EAPI=7
inherit linux-mod toolchain-funcs
MY_P="vbox-kernel-module-src-${PV}"
DESCRIPTION="Kernel Modules for Virtualbox"
HOMEPAGE="https://www.virtualbox.org/"
SRC_URI="https://dev.gentoo.org/~polynomial-c/virtualbox/${MY_P}.tar.xz"
LICENSE="GPL-2"
SLOT="0/$(ver_cut 1-2)"
[[ "${PV}" == *_beta* ]] || [[ "${PV}" == *_rc* ]] || \
KEYWORDS="~amd64"
IUSE="pax_kernel"
RDEPEND="!=app-emulation/virtualbox-9999"
S="${WORKDIR}"
BUILD_TARGETS="all"
MODULE_NAMES="vboxdrv(misc:${S}) vboxnetflt(misc:${S}) vboxnetadp(misc:${S})"
MODULESD_VBOXDRV_ENABLED="yes"
MODULESD_VBOXNETADP_ENABLED="no"
MODULESD_VBOXNETFLT_ENABLED="no"
pkg_setup() {
linux-mod_pkg_setup
BUILD_PARAMS="CC=$(tc-getBUILD_CC) KERN_DIR=${KV_DIR} KERN_VER=${KV_FULL} O=${KV_OUT_DIR} V=1 KBUILD_VERBOSE=1"
}
src_prepare() {
if use pax_kernel && kernel_is -ge 3 0 0 ; then
eapply -p0 "${FILESDIR}"/${PN}-5.2.8-pax-const.patch
fi
default
}
src_install() {
linux-mod_src_install
insinto /usr/lib/modules-load.d/
newins "${FILESDIR}"/virtualbox.conf-r1 virtualbox.conf
}
pkg_postinst() {
# Remove vboxpci.ko from current running kernel
find /lib/modules/${KV_FULL}/misc -type f -name "vboxpci.ko" -delete
linux-mod_pkg_postinst
}

@ -1,3 +1,4 @@
DIST VirtualBox-6.1.18.tar.bz2 165507486 BLAKE2B 3cf18f30671426f533838eb0579928b08ce022b832d509e70274978efce2e3e0e14dc8fbf258ef9a1ce8a3d666081863aa6971340e04600434f58136fe5c221a SHA512 41cb4bd42429b09836c59ef9867dd3d35d0d5512ff6e515a7f8688ed444c079ce353a84f0d45b607ccf08424782d5de09b264f51b2c41a9ec34eb834458c293c
DIST VirtualBox-6.1.20.tar.bz2 165569564 BLAKE2B cf8c110e78e7d7bef3e3243a8966f4d816dacc8dad6cc44737023a13f1b89dfb50661f6dabc742f328e5c03556ec82e7a22f5c1b97cfef774652ec901e733e5d SHA512 b5af4e04e1a52c85b20226a274fac93712b79d426c0268cce3f2a337616a03161a55522ecddd13844bfc24a6808ba3d651366e74ce657cc6f8fd64c34ae745a4
DIST VirtualBox-6.1.22.tar.bz2 165560989 BLAKE2B 871c2189827174561a2abce4d52056db892e596bcff76274770b43157cca93d2be9a3458ad3d41cca81d73d95f1db37e2d15fdbc192f4d5a59e3cc9b6365d3f6 SHA512 ab0fc7cea455f74598d5da18528404405221e9c96a34f0355a39187524240596db4b54e1b1af5f152d5329b8e7977218819c0605f0d0ba0d83a1fb8f8487548d
DIST virtualbox-6.1.12-patches-01.tar.xz 2528 BLAKE2B a5d7cde0daea41bee2e40e46569c725769927a31865d99d13b8b13c4903e59b4097f85da15dc592b9c7e8baf8ff805397af827620f107ba09a468b4d1198ecab SHA512 f71d10a9fbce99c3f631ef30bcfa9d0e017e702ac509541b039e08ccbcd024beb93fde09c43d90af5d9d28f6842a7947f20e7950d3897da3e6d57859657e1123

@ -0,0 +1,503 @@
# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
PYTHON_COMPAT=( python3_{7..9} )
inherit desktop flag-o-matic java-pkg-opt-2 linux-info pax-utils python-single-r1 tmpfiles toolchain-funcs udev xdg
MY_PN="VirtualBox"
MY_PV="${PV/beta/BETA}"
MY_PV="${MY_PV/rc/RC}"
MY_P=${MY_PN}-${MY_PV}
[[ "${PV}" == *a ]] && DIR_PV="$(ver_cut 1-3)"
DESCRIPTION="Family of powerful x86 virtualization products for enterprise and home use"
HOMEPAGE="https://www.virtualbox.org/"
SRC_URI="https://download.virtualbox.org/virtualbox/${DIR_PV:-${MY_PV}}/${MY_P}.tar.bz2
https://dev.gentoo.org/~polynomial-c/${PN}/patchsets/${PN}-6.1.12-patches-01.tar.xz"
LICENSE="GPL-2 dtrace? ( CDDL )"
SLOT="0/$(ver_cut 1-2)"
[[ "${PV}" == *_beta* ]] || [[ "${PV}" == *_rc* ]] || \
KEYWORDS="~amd64"
IUSE="alsa debug doc dtrace headless java libressl lvm +opus pam pax_kernel pulseaudio +opengl python +qt5 +sdk +udev vboxwebsrv vnc"
CDEPEND="
${PYTHON_DEPS}
!app-emulation/virtualbox-bin
acct-group/vboxusers
~app-emulation/virtualbox-modules-${DIR_PV:-${PV}}
dev-libs/libIDL
>=dev-libs/libxslt-1.1.19
net-misc/curl
dev-libs/libxml2
media-libs/libpng:0=
media-libs/libvpx:0=
sys-libs/zlib:=
!headless? (
media-libs/libsdl:0[X,video]
x11-libs/libX11
x11-libs/libxcb:=
x11-libs/libXcursor
x11-libs/libXext
x11-libs/libXmu
x11-libs/libXt
opengl? ( media-libs/libglvnd[X] )
qt5? (
dev-qt/qtcore:5
dev-qt/qtgui:5
dev-qt/qtprintsupport:5
dev-qt/qtwidgets:5
dev-qt/qtx11extras:5
opengl? ( dev-qt/qtopengl:5 )
x11-libs/libXinerama
)
)
libressl? ( dev-libs/libressl:= )
!libressl? ( dev-libs/openssl:0= )
lvm? ( sys-fs/lvm2 )
opus? ( media-libs/opus )
udev? ( >=virtual/udev-171 )
vnc? ( >=net-libs/libvncserver-0.9.9 )
"
DEPEND="
${CDEPEND}
alsa? ( >=media-libs/alsa-lib-1.0.13 )
!headless? (
x11-libs/libXinerama
opengl? ( virtual/opengl )
)
pam? ( sys-libs/pam )
pax_kernel? ( sys-apps/elfix )
pulseaudio? ( media-sound/pulseaudio )
qt5? ( dev-qt/linguist-tools:5 )
vboxwebsrv? ( net-libs/gsoap[-gnutls(-)] )
"
BDEPEND="
${PYTHON_DEPS}
>=dev-util/kbuild-0.1.9998.3127
>=dev-lang/yasm-0.6.2
sys-devel/bin86
sys-libs/libcap
sys-power/iasl
virtual/pkgconfig
doc? (
app-text/docbook-sgml-dtd:4.4
dev-texlive/texlive-basic
dev-texlive/texlive-latex
dev-texlive/texlive-latexrecommended
dev-texlive/texlive-latexextra
dev-texlive/texlive-fontsrecommended
dev-texlive/texlive-fontsextra
)
java? ( >=virtual/jdk-1.8 )
"
RDEPEND="
${CDEPEND}
java? ( >=virtual/jre-1.6 )
"
QA_TEXTRELS_x86="usr/lib/virtualbox-ose/VBoxGuestPropSvc.so
usr/lib/virtualbox/VBoxSDL.so
usr/lib/virtualbox/VBoxSharedFolders.so
usr/lib/virtualbox/VBoxDD2.so
usr/lib/virtualbox/VBoxOGLrenderspu.so
usr/lib/virtualbox/VBoxPython.so
usr/lib/virtualbox/VBoxDD.so
usr/lib/virtualbox/VBoxDDU.so
usr/lib/virtualbox/VBoxREM64.so
usr/lib/virtualbox/VBoxSharedClipboard.so
usr/lib/virtualbox/VBoxHeadless.so
usr/lib/virtualbox/VBoxRT.so
usr/lib/virtualbox/VBoxREM.so
usr/lib/virtualbox/VBoxSettings.so
usr/lib/virtualbox/VBoxKeyboard.so
usr/lib/virtualbox/VBoxSharedCrOpenGL.so
usr/lib/virtualbox/VBoxVMM.so
usr/lib/virtualbox/VirtualBox.so
usr/lib/virtualbox/VBoxOGLhosterrorspu.so
usr/lib/virtualbox/components/VBoxC.so
usr/lib/virtualbox/components/VBoxSVCM.so
usr/lib/virtualbox/components/VBoxDDU.so
usr/lib/virtualbox/components/VBoxRT.so
usr/lib/virtualbox/components/VBoxREM.so
usr/lib/virtualbox/components/VBoxVMM.so
usr/lib/virtualbox/VBoxREM32.so
usr/lib/virtualbox/VBoxPython2_7.so
usr/lib/virtualbox/VBoxXPCOMC.so
usr/lib/virtualbox/VBoxOGLhostcrutil.so
usr/lib/virtualbox/VBoxNetDHCP.so
usr/lib/virtualbox/VBoxNetNAT.so"
S="${WORKDIR}/${MY_PN}-${DIR_PV:-${MY_PV}}"
REQUIRED_USE="
java? ( sdk )
python? ( sdk )
vboxwebsrv? ( java )
${PYTHON_REQUIRED_USE}
"
pkg_pretend() {
if ! use headless && ! use qt5 ; then
einfo "No USE=\"qt5\" selected, this build will not include any Qt frontend."
elif use headless && use qt5 ; then
einfo "You selected USE=\"headless qt5\", defaulting to"
einfo "USE=\"headless\", this build will not include any X11/Qt frontend."
fi
if ! use opengl ; then
einfo "No USE=\"opengl\" selected, this build will lack"
einfo "the OpenGL feature."
fi
if ! use python ; then
einfo "You have disabled the \"python\" USE flag. This will only"
einfo "disable the python bindings being installed."
fi
}
pkg_setup() {
java-pkg-opt-2_pkg_setup
python-single-r1_pkg_setup
tc-ld-disable-gold #bug 488176
tc-export CC CXX LD AR RANLIB
export HOST_CC="$(tc-getBUILD_CC)"
}
src_prepare() {
# Remove shipped binaries (kBuild,yasm), see bug #232775
rm -r kBuild/bin tools || die
# Replace pointless GCC version check with something less stupid.
# This is needed for the qt5 version check.
sed -e 's@^check_gcc$@cc_maj="$(${CC} -dumpversion | cut -d. -f1)" ; cc_min="$(${CC} -dumpversion | cut -d. -f2)"@' \
-i configure || die
# Disable things unused or split into separate ebuilds
sed -e "s@MY_LIBDIR@$(get_libdir)@" \
"${FILESDIR}"/${PN}-5-localconfig > LocalConfig.kmk || die
# Respect LDFLAGS
sed -e "s@_LDFLAGS\.${ARCH}*.*=@& ${LDFLAGS}@g" \
-i Config.kmk src/libs/xpcom18a4/Config.kmk || die
# Do not use hard-coded ld (related to bug #488176)
sed -e '/QUIET)ld /s@ld @$(LD) @' \
-i src/VBox/Devices/PC/ipxe/Makefile.kmk || die
# Use PAM only when pam USE flag is enbaled (bug #376531)
if ! use pam ; then
einfo "Disabling PAM removes the possibility to use the VRDP features."
sed -i 's@^.*VBOX_WITH_PAM@#VBOX_WITH_PAM@' Config.kmk || die
sed -i 's@\(.*/auth/Makefile.kmk.*\)@#\1@' \
src/VBox/HostServices/Makefile.kmk || die
fi
# add correct java path
if use java ; then
sed "s@/usr/lib/jvm/java-6-sun@$(java-config -O)@" \
-i "${S}"/Config.kmk || die
java-pkg-opt-2_src_prepare
fi
# Only add nopie patch when we're on hardened
if gcc-specs-pie ; then
eapply "${FILESDIR}/050_virtualbox-5.2.8-nopie.patch"
fi
# Only add paxmark patch when we're on pax_kernel
if use pax_kernel ; then
eapply "${FILESDIR}"/virtualbox-5.2.8-paxmark-bldprogs.patch
fi
eapply "${WORKDIR}/patches"
default
}
doecho() {
echo "$@"
"$@" || die
}
src_configure() {
local myconf=(
--with-gcc="$(tc-getCC)"
--with-g++="$(tc-getCXX)"
--disable-dbus
--disable-kmods
$(usex alsa '' --disable-alsa)
$(usex debug --build-debug '')
$(usex doc '' --disable-docs)
$(usex java '' --disable-java)
$(usex lvm '' --disable-devmapper)
$(usex opus '' --disable-libopus)
$(usex pulseaudio '' --disable-pulse)
$(usex python '' --disable-python)
$(usex vboxwebsrv --enable-webservice '')
$(usex vnc --enable-vnc '')
)
if ! use headless ; then
myconf+=(
$(usex opengl '' --disable-opengl)
$(usex qt5 '' --disable-qt)
)
else
myconf+=(
--build-headless
--disable-opengl
)
fi
if use amd64 && ! has_multilib_profile ; then
myconf+=( --disable-vmmraw )
fi
# not an autoconf script
doecho ./configure ${myconf[@]}
}
src_compile() {
source ./env.sh || die
# Force kBuild to respect C[XX]FLAGS and MAKEOPTS (bug #178529)
MAKEJOBS=$(grep -Eo '(\-j|\-\-jobs)(=?|[[:space:]]*)[[:digit:]]+' <<< ${MAKEOPTS}) #'
MAKELOAD=$(grep -Eo '(\-l|\-\-load-average)(=?|[[:space:]]*)[[:digit:]]+' <<< ${MAKEOPTS}) #'
MAKEOPTS="${MAKEJOBS} ${MAKELOAD}"
MAKE="kmk" emake \
VBOX_BUILD_PUBLISHER=_Gentoo \
TOOL_GXX3_CC="$(tc-getCC)" TOOL_GXX3_CXX="$(tc-getCXX)" \
TOOL_GXX3_LD="$(tc-getCXX)" VBOX_GCC_OPT="${CXXFLAGS}" \
TOOL_YASM_AS=yasm KBUILD_VERBOSE=2 \
VBOX_WITH_VBOXIMGMOUNT=1 \
all
}
src_install() {
cd "${S}"/out/linux.${ARCH}/$(usex debug debug release)/bin || die
local vbox_inst_path="/usr/$(get_libdir)/${PN}" each size ico icofile
vbox_inst() {
local binary="${1}"
local perms="${2:-0750}"
local path="${3:-${vbox_inst_path}}"
[[ -n "${binary}" ]] || die "vbox_inst: No binary given!"
[[ ${perms} =~ ^[[:digit:]]+{4}$ ]] || die "vbox_inst: perms must consist of four digits."
insinto ${path}
doins ${binary}
fowners root:vboxusers ${path}/${binary}
fperms ${perms} ${path}/${binary}
}
# Create configuration files
insinto /etc/vbox
newins "${FILESDIR}/${PN}-4-config" vbox.cfg
# Set the correct libdir
sed \
-e "s@MY_LIBDIR@$(get_libdir)@" \
-i "${ED}"/etc/vbox/vbox.cfg || die "vbox.cfg sed failed"
# Install the wrapper script
exeinto ${vbox_inst_path}
newexe "${FILESDIR}/${PN}-ose-6-wrapper" "VBox"
fowners root:vboxusers ${vbox_inst_path}/VBox
fperms 0750 ${vbox_inst_path}/VBox
# Install binaries and libraries
insinto ${vbox_inst_path}
doins -r components
for each in VBox{Autostart,BalloonCtrl,BugReport,CpuReport,ExtPackHelperApp,Manage,SVC,Tunctl,VMMPreload,XPCOMIPCD} vboximg-mount *so *r0 iPxeBaseBin ; do
vbox_inst ${each}
done
# These binaries need to be suid root.
for each in VBox{Headless,Net{AdpCtl,DHCP,NAT}} ; do
vbox_inst ${each} 4750
done
# Install EFI Firmware files (bug #320757)
for each in VBoxEFI{32,64}.fd ; do
vbox_inst ${each} 0644
done
# VBoxSVC and VBoxManage need to be pax-marked (bug #403453)
# VBoxXPCOMIPCD (bug #524202)
for each in VBox{Headless,Manage,SVC,XPCOMIPCD} ; do
pax-mark -m "${ED}"${vbox_inst_path}/${each}
done
# Symlink binaries to the shipped wrapper
for each in vbox{autostart,balloonctrl,bugreport,headless,manage} VBox{Autostart,BalloonCtrl,BugReport,Headless,Manage,VRDP} ; do
dosym ${vbox_inst_path}/VBox /usr/bin/${each}
done
dosym ${vbox_inst_path}/VBoxTunctl /usr/bin/VBoxTunctl
dosym ${vbox_inst_path}/vboximg-mount /usr/bin/vboximg-mount
if use pam ; then
# VRDPAuth only works with this (bug #351949)
dosym VBoxAuth.so ${vbox_inst_path}/VRDPAuth.so
fi
# set an env-variable for 3rd party tools
echo -n "VBOX_APP_HOME=${vbox_inst_path}" > "${T}/90virtualbox"
doenvd "${T}/90virtualbox"
if ! use headless ; then
vbox_inst rdesktop-vrdp
vbox_inst VBoxSDL 4750
pax-mark -m "${ED}"${vbox_inst_path}/VBoxSDL
for each in vboxsdl VBoxSDL ; do
dosym ${vbox_inst_path}/VBox /usr/bin/${each}
done
if use qt5 ; then
vbox_inst VirtualBox
vbox_inst VirtualBoxVM 4750
for each in VirtualBox{,VM} ; do
pax-mark -m "${ED}"${vbox_inst_path}/${each}
done
if use opengl ; then
vbox_inst VBoxTestOGL
pax-mark -m "${ED}"${vbox_inst_path}/VBoxTestOGL
fi
for each in virtualbox{,vm} VirtualBox{,VM} ; do
dosym ${vbox_inst_path}/VBox /usr/bin/${each}
done
insinto /usr/share/${PN}
doins -r nls
doins -r UnattendedTemplates
domenu ${PN}.desktop
fi
pushd "${S}"/src/VBox/Artwork/OSE &>/dev/null || die
for size in 16 32 48 64 128 ; do
newicon -s ${size} ${PN}-${size}px.png ${PN}.png
done
newicon ${PN}-48px.png ${PN}.png
doicon -s scalable ${PN}.svg
popd &>/dev/null || die
pushd "${S}"/src/VBox/Artwork/other &>/dev/null || die
for size in 16 24 32 48 64 72 96 128 256 512 ; do
for ico in hdd ova ovf vbox{,-extpack} vdi vdh vmdk ; do
icofile="${PN}-${ico}-${size}px.png"
if [[ -f "${icofile}" ]] ; then
newicon -s ${size} ${icofile} ${PN}-${ico}.png
fi
done
done
popd &>/dev/null || die
fi
if use lvm ; then
vbox_inst VBoxVolInfo 4750
dosym ${vbox_inst_path}/VBoxVolInfo /usr/bin/VBoxVolInfo
fi
if use sdk ; then
insinto ${vbox_inst_path}
doins -r sdk
if use java ; then
java-pkg_regjar "${ED}/${vbox_inst_path}/sdk/bindings/xpcom/java/vboxjxpcom.jar"
java-pkg_regso "${ED}/${vbox_inst_path}/libvboxjxpcom.so"
fi
fi
if use udev ; then
local udevdir="$(get_udevdir)"
insinto ${udevdir}
doins VBoxCreateUSBNode.sh
fowners root:vboxusers ${udevdir}/VBoxCreateUSBNode.sh
fperms 0750 ${udevdir}/VBoxCreateUSBNode.sh
insinto ${udevdir}/rules.d
sed "s@%UDEVDIR%@${udevdir}@" "${FILESDIR}"/10-virtualbox.rules \
> "${T}"/10-virtualbox.rules || die
doins "${T}"/10-virtualbox.rules
fi
if use vboxwebsrv ; then
vbox_inst vboxwebsrv
dosym ${vbox_inst_path}/VBox /usr/bin/vboxwebsrv
newinitd "${FILESDIR}"/vboxwebsrv-initd vboxwebsrv
newconfd "${FILESDIR}"/vboxwebsrv-confd vboxwebsrv
fi
# Remove dead symlinks (bug #715338)
find "${ED}"/usr/$(get_libdir)/${PN} -xtype l -delete || die
# Fix version string in extensions or else they don't get accepted
# by the virtualbox host process (see bug #438930)
find ExtensionPacks -type f -name "ExtPack.xml" -print0 \
| xargs --no-run-if-empty --null sed -i '/Version/s@_Gentoo@@' \
|| die
local extensions_dir="${vbox_inst_path}/ExtensionPacks"
if use vnc ; then
insinto ${extensions_dir}
doins -r ExtensionPacks/VNC
fi
if use dtrace ; then
insinto ${extensions_dir}
doins -r ExtensionPacks/Oracle_VBoxDTrace_Extension_Pack
fi
if use doc ; then
dodoc UserManual.pdf
fi
newtmpfiles "${FILESDIR}"/${PN}-vboxusb_tmpfilesd ${PN}-vboxusb.conf
}
pkg_postinst() {
xdg_pkg_postinst
if use udev ; then
udevadm control --reload-rules \
&& udevadm trigger --subsystem-match=usb
fi
tmpfiles_process /usr/lib/tmpfiles.d/virtualbox-vboxusb.conf
if ! use headless && use qt5 ; then
elog "To launch VirtualBox just type: \"virtualbox\"."
fi
elog "You must be in the vboxusers group to use VirtualBox."
elog ""
elog "The latest user manual is available for download at:"
elog "http://download.virtualbox.org/virtualbox/${DIR_PV:-${PV}}/UserManual.pdf"
elog ""
elog "For advanced networking setups you should emerge:"
elog "net-misc/bridge-utils and sys-apps/usermode-utilities"
elog ""
elog "Starting with version 4.0.0, ${PN} has USB-1 support."
elog "For USB-2 support, PXE-boot ability and VRDP support please emerge"
elog " app-emulation/virtualbox-extpack-oracle"
elog "package."
elog "Starting with version 5.0.0, ${PN} no longer has the \"additions\" and"
elog "the \"extension\" USE flag. For installation of the guest additions ISO"
elog "image, please emerge"
elog " app-emulation/virtualbox-additions"
elog "and for the USB2, USB3, VRDP and PXE boot ROM modules, please emerge"
elog " app-emulation/virtualbox-extpack-oracle"
if ! use udev ; then
elog ""
elog "WARNING!"
elog "Without USE=udev, USB devices will likely not work in ${PN}."
elif [[ -e "${ROOT}/etc/udev/rules.d/10-virtualbox.rules" ]] ; then
elog ""
elog "Please remove \"${ROOT}/etc/udev/rules.d/10-virtualbox.rules\""
elog "or else USB in ${PN} won't work."
fi
}

Binary file not shown.

@ -1,5 +1,5 @@
--- src/probes/unix/FileProbe.cpp.old 2014-10-08 09:15:37.000000000 +0200
+++ src/probes/unix/FileProbe.cpp 2014-10-08 09:15:55.000000000 +0200
--- a/src/probes/unix/FileProbe.cpp
+++ b/src/probes/unix/FileProbe.cpp
@@ -386,18 +386,8 @@
6) If a file has an ACL, the value will be 'true'.
*/

@ -1,5 +1,5 @@
--- src/probes/unix/Process58Probe.cpp.old 2014-10-08 08:56:37.000000000 +0200
+++ src/probes/unix/Process58Probe.cpp 2014-10-08 08:57:58.000000000 +0200
--- a/src/probes/unix/Process58Probe.cpp
+++ b/src/probes/unix/Process58Probe.cpp
@@ -743,26 +743,8 @@
}

@ -0,0 +1,72 @@
--- a/src/AbsProbe.cpp
+++ b/src/AbsProbe.cpp
@@ -52,7 +52,7 @@
// use const wherever it makes sense, to ensure const-correctness??
// Or maybe I should have implemented operator<() for items and
// used the default std::less template...?
- typedef set<Item*, std::less<const Item*> > ItemCache;
+ typedef set<Item*, std::less<Item*> > ItemCache;
ItemCache globalItemCache;
}
--- a/src/ErrnoException.h
+++ b/src/ErrnoException.h
@@ -49,10 +49,10 @@
SetErrorMessage(syscall+": "+std::strerror(errnoVal));
}
- virtual ~ErrnoException() throw () {
+ virtual ~ErrnoException() {
}
- virtual const char* what() const throw() {
+ virtual const char* what() const noexcept {
return errorMessage.c_str();
}
};
--- a/src/OutOfMemoryException.h
+++ b/src/OutOfMemoryException.h
@@ -47,10 +47,10 @@
: Exception(msg, severity, cause) {
}
- virtual ~OutOfMemoryException() throw () {
+ virtual ~OutOfMemoryException() {
}
- virtual const char* what() const throw() {
+ virtual const char* what() const noexcept {
return errorMessage.c_str();
}
};
--- a/src/probes/unix/RunLevelProbe.cpp
+++ b/src/probes/unix/RunLevelProbe.cpp
@@ -125,7 +125,7 @@
void
-RunLevelProbe::_verifyRunlevelObjectAttr( ObjectEntity * service_name, ObjectEntity * runlevel ) const throw( ProbeException ) {
+RunLevelProbe::_verifyRunlevelObjectAttr( ObjectEntity * service_name, ObjectEntity * runlevel ) const {
// check datatypes - only allow string
if( service_name->GetDatatype() != OvalEnum::DATATYPE_STRING ){
--- a/src/probes/unix/RunLevelProbe.h
+++ b/src/probes/unix/RunLevelProbe.h
@@ -76,7 +76,7 @@
*/
struct ltrunlevel_item_comparator
{
- bool operator() ( const runlevel_item &r1, const runlevel_item &r2 )
+ bool operator() ( const runlevel_item &r1, const runlevel_item &r2 ) const
{
return r1.service_name.compare(r2.service_name) < 0;
}
@@ -115,7 +115,7 @@
@param runlevel the runlevel runlevel_object entity
@throws ProbeException if invalid operations or datatypes are encountered
*/
- void _verifyRunlevelObjectAttr( ObjectEntity * service_name, ObjectEntity * runlevel ) const throw( ProbeException );
+ void _verifyRunlevelObjectAttr( ObjectEntity * service_name, ObjectEntity * runlevel ) const;
/**
Checks to see if the given filename is either "." or ".."

@ -1,34 +1,32 @@
# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=5
EAPI=7
inherit epatch toolchain-funcs
inherit toolchain-funcs
DESCRIPTION="Free implementation of OVAL"
HOMEPAGE="http://oval.mitre.org/language/interpreter.html"
SRC_URI="mirror://sourceforge/${PN}/${P}-src.tar.bz2"
S="${WORKDIR}/${P}-src"
LICENSE="BSD"
SLOT="0"
KEYWORDS="~amd64 ~x86"
IUSE="acl ldap selinux"
CDEPEND="dev-libs/libgcrypt:0
dev-libs/libpcre
dev-libs/xalan-c
dev-libs/xerces-c
sys-apps/util-linux
DEPEND="
dev-libs/libgcrypt:=
dev-libs/libpcre:=
dev-libs/xalan-c:=
dev-libs/xerces-c:=
sys-apps/util-linux:=
sys-libs/libcap
acl? ( sys-apps/acl )
acl? ( sys-apps/acl:= )
ldap? ( net-nds/openldap )"
DEPEND="${CDEPEND}
sys-apps/sed"
RDEPEND="${CDEPEND}
RDEPEND="${DEPEND}
selinux? ( sys-libs/libselinux )"
S="${WORKDIR}/${P}-src"
src_prepare() {
if ! use ldap ; then
einfo "Disabling LDAP probes"
@ -42,7 +40,7 @@ src_prepare() {
if ! use acl ; then
sed -i 's,.*libacl,//&,' src/probes/unix/FileProbe.h || die
epatch "${FILESDIR}"/${P}-disable-acl.patch
eapply "${FILESDIR}"/${P}-disable-acl.patch
sed -i 's, -lacl , ,' project/linux/Makefile || die
fi
@ -58,7 +56,7 @@ src_prepare() {
rm src/probes/linux/SelinuxSecurityContextProbe.cpp || die
rm src/probes/linux/SelinuxBooleanProbe.cpp || die
rm src/probes/linux/SelinuxBooleanProbe.h || die
epatch "${FILESDIR}"/${P}-disable_RetrieveSelinuxDomainLabel.patch
eapply "${FILESDIR}"/${P}-disable_RetrieveSelinuxDomainLabel.patch
sed -i 's,.*selinux.*,//&,' src/linux/ProbeFactory.cpp || die
sed -i 's,.*Selinux.*,//&,' src/linux/ProbeFactory.cpp || die
sed -i 's,.*selinux.*.h.*,//&,' src/probes/unix/Process58Probe.cpp || die
@ -70,11 +68,19 @@ src_prepare() {
sed -i 's,#include <unistd.h>,&\n#include <stdlib.h>,' src/linux/NetworkInterfaces.cpp || die
sed -i 's,#include <unistd.h>,&\n#include <stdlib.h>,' src/linux/SystemInfo.cpp || die
# respect CXXFLAGS and CXX
sed -i -e '/^CPPFLAGS/s/$(INCDIRS)/$(CXXFLAGS) \0/' project/linux/Makefile || die
# respect CXX, CXXFLAGS and LDFLAGS
sed -e '/^CPPFLAGS/s/$(INCDIRS)/$(CXXFLAGS) \0/' \
-e 's/$(CXX) $^/$(CXX) $(LDFLAGS) $^/g' \
-i project/linux/Makefile || die
# no such library on linux
sed -i 's,-lxalanMsg,,' project/linux/Makefile || die
eapply "${FILESDIR}"/${P}-gcc11.patch
eapply_user
}
src_configure() {
tc-export CXX
}
@ -85,9 +91,11 @@ src_compile() {
src_install() {
# no make install in Makefile
dosbin project/linux/Release/ovaldi project/linux/ovaldi.sh
dodir /var/log/${PN}
insinto /usr/share/${PN}
doins xml/*
dodir /var/log/ovaldi
insinto /usr/share/ovaldi
doins -r xml/.
dodoc docs/{README.txt,version.txt}
doman docs/ovaldi.1
}

Binary file not shown.

@ -1 +0,0 @@
DIST ical-3.0.tar.gz 373891 BLAKE2B 817a160abe682ee077733077f7f6b7a652e11cbce10333d75ba5d3b345e814481be8a90a1d4d959c24837dcf6c7a21f3cb75ada261436d1466890fab324dd5f6 SHA512 78cd07a206f4719dfb693b82fda4a735e70dc072fc75bf3885e72f668ebf7fa3511acedd82f99dd3ec366595a8c0ee8a1f13e5dc836732f241ff32d899eb3b25

@ -1,252 +0,0 @@
Fix building with C++14, which errors out due to narrowing conversions.
See also: https://bugs.gentoo.org/show_bug.cgi?id=593948
--- a/bitmaps/dleft.xbm
+++ b/bitmaps/dleft.xbm
@@ -1,6 +1,6 @@
#define dleft_width 16
#define dleft_height 16
static char dleft_bits[] = {
- 0x00, 0x00, 0x80, 0x61, 0xc0, 0x71, 0xe0, 0x79, 0xf0, 0x7d, 0xf8, 0x7f,
- 0xfc, 0x7f, 0xfe, 0x7f, 0xfe, 0x7f, 0xfc, 0x7f, 0xf8, 0x7f, 0xf0, 0x7d,
- 0xe0, 0x79, 0xc0, 0x71, 0x80, 0x61, 0x00, 0x00};
+ 0x00, 0x00, (char)0x80, 0x61, (char)0xc0, 0x71, (char)0xe0, 0x79, (char)0xf0, 0x7d, (char)0xf8, 0x7f,
+ (char)0xfc, 0x7f, (char)0xfe, 0x7f, (char)0xfe, 0x7f, (char)0xfc, 0x7f, (char)0xf8, 0x7f, (char)0xf0, 0x7d,
+ (char)0xe0, 0x79, (char)0xc0, 0x71, (char)0x80, 0x61, 0x00, 0x00};
--- a/bitmaps/done.xbm
+++ b/bitmaps/done.xbm
@@ -1,6 +1,6 @@
#define done_width 16
#define done_height 16
static char done_bits[] = {
- 0x00, 0x00, 0xff, 0x8f, 0xff, 0x67, 0x03, 0x30, 0x03, 0x18, 0x03, 0x4c,
- 0x33, 0x6e, 0x7b, 0x67, 0xff, 0x67, 0xfb, 0x63, 0xf3, 0x63, 0xe3, 0x61,
- 0xc3, 0x61, 0x83, 0x60, 0xff, 0x7f, 0xff, 0x7f};
+ 0x00, 0x00, (char)0xff, (char)0x8f, (char)0xff, 0x67, 0x03, 0x30, 0x03, 0x18, 0x03, 0x4c,
+ 0x33, 0x6e, 0x7b, 0x67, (char)0xff, 0x67, (char)0xfb, 0x63, (char)0xf3, 0x63, (char)0xe3, 0x61,
+ (char)0xc3, 0x61, (char)0x83, 0x60, (char)0xff, 0x7f, (char)0xff, 0x7f};
--- a/bitmaps/dright.xbm
+++ b/bitmaps/dright.xbm
@@ -1,6 +1,6 @@
#define dright_width 16
#define dright_height 16
static char dright_bits[] = {
- 0x00, 0x00, 0x86, 0x01, 0x8e, 0x03, 0x9e, 0x07, 0xbe, 0x0f, 0xfe, 0x1f,
- 0xfe, 0x3f, 0xfe, 0x7f, 0xfe, 0x7f, 0xfe, 0x3f, 0xfe, 0x1f, 0xbe, 0x0f,
- 0x9e, 0x07, 0x8e, 0x03, 0x86, 0x01, 0x00, 0x00};
+ 0x00, 0x00, (char)0x86, 0x01, (char)0x8e, 0x03, (char)0x9e, 0x07, (char)0xbe, 0x0f, (char)0xfe, 0x1f,
+ (char)0xfe, 0x3f, (char)0xfe, 0x7f, (char)0xfe, 0x7f, (char)0xfe, 0x3f, (char)0xfe, 0x1f, (char)0xbe, 0x0f,
+ (char)0x9e, 0x07, (char)0x8e, 0x03, (char)0x86, 0x01, 0x00, 0x00};
--- a/bitmaps/ical.xbm
+++ b/bitmaps/ical.xbm
@@ -3,37 +3,37 @@
static char ical_bits[] = {
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x30, 0x00, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x68, 0x00,
- 0x20, 0x01, 0x00, 0x00, 0x00, 0x00, 0x48, 0x00, 0xa0, 0x01, 0x00, 0x00,
- 0x00, 0x00, 0x68, 0x00, 0x20, 0x01, 0x00, 0x00, 0x80, 0xff, 0xcf, 0xff,
- 0xbf, 0xff, 0x1f, 0x00, 0x80, 0x00, 0x68, 0x0a, 0x20, 0x29, 0x10, 0x00,
- 0x80, 0x00, 0x48, 0x05, 0xa0, 0x15, 0x10, 0x00, 0x80, 0x00, 0xe8, 0x0a,
- 0x20, 0x2b, 0xb0, 0x00, 0x80, 0x00, 0x48, 0x05, 0xa0, 0x15, 0x50, 0x01,
- 0x80, 0x00, 0xec, 0x02, 0x30, 0x0b, 0xb0, 0x00, 0x80, 0x00, 0xcc, 0x01,
- 0xb0, 0x07, 0x50, 0x01, 0x80, 0x00, 0xfc, 0x00, 0xf0, 0x03, 0xb0, 0x00,
- 0x80, 0x00, 0x78, 0x00, 0xe0, 0x01, 0x50, 0x01, 0x80, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0xb0, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x50, 0x01,
- 0x80, 0x00, 0x00, 0xc0, 0x07, 0x00, 0xb0, 0x00, 0x80, 0x00, 0x00, 0xf0,
- 0x07, 0x00, 0x50, 0x01, 0x80, 0x00, 0x00, 0xfc, 0x07, 0x00, 0xb0, 0x00,
- 0x80, 0x00, 0x00, 0xfc, 0x07, 0x00, 0x50, 0x01, 0x80, 0x00, 0x00, 0xfc,
- 0x07, 0x00, 0xb0, 0x00, 0x80, 0x00, 0x00, 0xfc, 0x07, 0x00, 0x50, 0x01,
- 0x80, 0x00, 0x00, 0xc0, 0x07, 0x00, 0xb0, 0x00, 0x80, 0x00, 0x00, 0xc0,
- 0x07, 0x00, 0x50, 0x01, 0x80, 0x00, 0x00, 0xc0, 0x07, 0x00, 0xb0, 0x00,
- 0x80, 0x00, 0x00, 0xc0, 0x07, 0x00, 0x50, 0x01, 0x80, 0x00, 0x00, 0xc0,
- 0x07, 0x00, 0xb0, 0x00, 0x80, 0x00, 0x00, 0xc0, 0x07, 0x00, 0x50, 0x01,
- 0x80, 0x00, 0x00, 0xc0, 0x07, 0x00, 0xb0, 0x00, 0x80, 0x00, 0x00, 0xc0,
- 0x07, 0x00, 0x50, 0x01, 0x80, 0x00, 0x00, 0xc0, 0x07, 0x00, 0xb0, 0x00,
- 0x80, 0x00, 0x00, 0xc0, 0x07, 0x00, 0x50, 0x01, 0x80, 0x00, 0x00, 0xc0,
- 0x07, 0x00, 0xb0, 0x00, 0x80, 0x00, 0x00, 0xc0, 0x07, 0x00, 0x50, 0x01,
- 0x80, 0xff, 0x01, 0xc0, 0x07, 0x00, 0xb0, 0x00, 0x80, 0x01, 0x01, 0xc0,
- 0x07, 0x00, 0x50, 0x01, 0x80, 0x02, 0x01, 0xc0, 0x07, 0x00, 0xb0, 0x00,
- 0x80, 0x04, 0x01, 0xc0, 0x07, 0x00, 0x50, 0x01, 0x80, 0x08, 0x01, 0x00,
- 0x00, 0x00, 0xb0, 0x00, 0x80, 0x10, 0x01, 0x00, 0x00, 0x00, 0x50, 0x01,
- 0x80, 0x20, 0x01, 0x00, 0x00, 0x00, 0xb0, 0x00, 0x80, 0x40, 0x01, 0x00,
- 0x00, 0x00, 0x50, 0x01, 0x80, 0x80, 0x01, 0x00, 0x00, 0x00, 0xb0, 0x00,
- 0x80, 0xff, 0xff, 0xff, 0xff, 0xff, 0x5f, 0x01, 0x00, 0xaa, 0xaa, 0xaa,
- 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x54, 0x55, 0x55, 0x55, 0x55, 0x55, 0x01,
- 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x54, 0x55, 0x55,
+ 0x00, 0x00, 0x30, 0x00, (char)0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x68, 0x00,
+ 0x20, 0x01, 0x00, 0x00, 0x00, 0x00, 0x48, 0x00, (char)0xa0, 0x01, 0x00, 0x00,
+ 0x00, 0x00, 0x68, 0x00, 0x20, 0x01, 0x00, 0x00, (char)0x80, (char)0xff, (char)0xcf, (char)0xff,
+ (char)0xbf, (char)0xff, 0x1f, 0x00, (char)0x80, 0x00, 0x68, 0x0a, 0x20, 0x29, 0x10, 0x00,
+ (char)0x80, 0x00, 0x48, 0x05, (char)0xa0, 0x15, 0x10, 0x00, (char)0x80, 0x00, (char)0xe8, 0x0a,
+ 0x20, 0x2b, (char)0xb0, 0x00, (char)0x80, 0x00, 0x48, 0x05, (char)0xa0, 0x15, 0x50, 0x01,
+ (char)0x80, 0x00, (char)0xec, 0x02, 0x30, 0x0b, (char)0xb0, 0x00, (char)0x80, 0x00, (char)0xcc, 0x01,
+ (char)0xb0, 0x07, 0x50, 0x01, (char)0x80, 0x00, (char)0xfc, 0x00, (char)0xf0, 0x03, (char)0xb0, 0x00,
+ (char)0x80, 0x00, 0x78, 0x00, (char)0xe0, 0x01, 0x50, 0x01, (char)0x80, 0x00, 0x00, 0x00,
+ 0x00, 0x00, (char)0xb0, 0x00, (char)0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x50, 0x01,
+ (char)0x80, 0x00, 0x00, (char)0xc0, 0x07, 0x00, (char)0xb0, 0x00, (char)0x80, 0x00, 0x00, (char)0xf0,
+ 0x07, 0x00, 0x50, 0x01, (char)0x80, 0x00, 0x00, (char)0xfc, 0x07, 0x00, (char)0xb0, 0x00,
+ (char)0x80, 0x00, 0x00, (char)0xfc, 0x07, 0x00, 0x50, 0x01, (char)0x80, 0x00, 0x00, (char)0xfc,
+ 0x07, 0x00, (char)0xb0, 0x00, (char)0x80, 0x00, 0x00, (char)0xfc, 0x07, 0x00, 0x50, 0x01,
+ (char)0x80, 0x00, 0x00, (char)0xc0, 0x07, 0x00, (char)0xb0, 0x00, (char)0x80, 0x00, 0x00, (char)0xc0,
+ 0x07, 0x00, 0x50, 0x01, (char)0x80, 0x00, 0x00, (char)0xc0, 0x07, 0x00, (char)0xb0, 0x00,
+ (char)0x80, 0x00, 0x00, (char)0xc0, 0x07, 0x00, 0x50, 0x01, (char)0x80, 0x00, 0x00, (char)0xc0,
+ 0x07, 0x00, (char)0xb0, 0x00, (char)0x80, 0x00, 0x00, (char)0xc0, 0x07, 0x00, 0x50, 0x01,
+ (char)0x80, 0x00, 0x00, (char)0xc0, 0x07, 0x00, (char)0xb0, 0x00, (char)0x80, 0x00, 0x00, (char)0xc0,
+ 0x07, 0x00, 0x50, 0x01, (char)0x80, 0x00, 0x00, (char)0xc0, 0x07, 0x00, (char)0xb0, 0x00,
+ (char)0x80, 0x00, 0x00, (char)0xc0, 0x07, 0x00, 0x50, 0x01, (char)0x80, 0x00, 0x00, (char)0xc0,
+ 0x07, 0x00, (char)0xb0, 0x00, (char)0x80, 0x00, 0x00, (char)0xc0, 0x07, 0x00, 0x50, 0x01,
+ (char)0x80, (char)0xff, 0x01, (char)0xc0, 0x07, 0x00, (char)0xb0, 0x00, (char)0x80, 0x01, 0x01, (char)0xc0,
+ 0x07, 0x00, 0x50, 0x01, (char)0x80, 0x02, 0x01, (char)0xc0, 0x07, 0x00, (char)0xb0, 0x00,
+ (char)0x80, 0x04, 0x01, (char)0xc0, 0x07, 0x00, 0x50, 0x01, (char)0x80, 0x08, 0x01, 0x00,
+ 0x00, 0x00, (char)0xb0, 0x00, (char)0x80, 0x10, 0x01, 0x00, 0x00, 0x00, 0x50, 0x01,
+ (char)0x80, 0x20, 0x01, 0x00, 0x00, 0x00, (char)0xb0, 0x00, (char)0x80, 0x40, 0x01, 0x00,
+ 0x00, 0x00, 0x50, 0x01, (char)0x80, (char)0x80, 0x01, 0x00, 0x00, 0x00, (char)0xb0, 0x00,
+ (char)0x80, (char)0xff, (char)0xff, (char)0xff, (char)0xff, (char)0xff, 0x5f, 0x01, 0x00, (char)0xaa, (char)0xaa, (char)0xaa,
+ (char)0xaa, (char)0xaa, (char)0xaa, 0x00, 0x00, 0x54, 0x55, 0x55, 0x55, 0x55, 0x55, 0x01,
+ 0x00, (char)0xaa, (char)0xaa, (char)0xaa, (char)0xaa, (char)0xaa, (char)0xaa, 0x00, 0x00, 0x54, 0x55, 0x55,
0x55, 0x55, 0x55, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00};
--- a/bitmaps/left.xbm
+++ b/bitmaps/left.xbm
@@ -2,6 +2,6 @@
#define left_width 16
#define left_height 16
static char left_bits[] = {
- 0x00, 0x00, 0x80, 0x01, 0x40, 0x01, 0x20, 0x01, 0x10, 0x01, 0x08, 0x7f,
+ 0x00, 0x00, (char)0x80, 0x01, 0x40, 0x01, 0x20, 0x01, 0x10, 0x01, 0x08, 0x7f,
0x04, 0x40, 0x02, 0x40, 0x02, 0x40, 0x04, 0x40, 0x08, 0x7f, 0x10, 0x01,
- 0x20, 0x01, 0x40, 0x01, 0x80, 0x01, 0x00, 0x00};
+ 0x20, 0x01, 0x40, 0x01, (char)0x80, 0x01, 0x00, 0x00};
--- a/bitmaps/right.xbm
+++ b/bitmaps/right.xbm
@@ -2,6 +2,6 @@
#define right_width 16
#define right_height 16
static char right_bits[] = {
- 0x00, 0x00, 0x80, 0x01, 0x80, 0x02, 0x80, 0x04, 0x80, 0x08, 0xfe, 0x10,
- 0x02, 0x20, 0x02, 0x40, 0x02, 0x40, 0x02, 0x20, 0xfe, 0x10, 0x80, 0x08,
- 0x80, 0x04, 0x80, 0x02, 0x80, 0x01, 0x00, 0x00};
+ 0x00, 0x00, (char)0x80, 0x01, (char)0x80, 0x02, (char)0x80, 0x04, (char)0x80, 0x08, (char)0xfe, 0x10,
+ 0x02, 0x20, 0x02, 0x40, 0x02, 0x40, 0x02, 0x20, (char)0xfe, 0x10, (char)0x80, 0x08,
+ (char)0x80, 0x04, (char)0x80, 0x02, (char)0x80, 0x01, 0x00, 0x00};
--- a/bitmaps/sleft.xbm
+++ b/bitmaps/sleft.xbm
@@ -1,6 +1,6 @@
#define sleft_width 16
#define sleft_height 16
static char sleft_bits[] = {
- 0x00, 0x00, 0x00, 0x0c, 0x00, 0x0e, 0x00, 0x0f, 0x80, 0x0f, 0xc0, 0x0f,
- 0xe0, 0x0f, 0xf0, 0x0f, 0xf0, 0x0f, 0xe0, 0x0f, 0xc0, 0x0f, 0x80, 0x0f,
+ 0x00, 0x00, 0x00, 0x0c, 0x00, 0x0e, 0x00, 0x0f, (char)0x80, 0x0f, (char)0xc0, 0x0f,
+ (char)0xe0, 0x0f, (char)0xf0, 0x0f, (char)0xf0, 0x0f, (char)0xe0, 0x0f, (char)0xc0, 0x0f, (char)0x80, 0x0f,
0x00, 0x0f, 0x00, 0x0e, 0x00, 0x0c, 0x00, 0x00};
--- a/bitmaps/sright.xbm
+++ b/bitmaps/sright.xbm
@@ -1,6 +1,6 @@
#define sright_width 16
#define sright_height 16
static char sright_bits[] = {
- 0x00, 0x00, 0x30, 0x00, 0x70, 0x00, 0xf0, 0x00, 0xf0, 0x01, 0xf0, 0x03,
- 0xf0, 0x07, 0xf0, 0x0f, 0xf0, 0x0f, 0xf0, 0x07, 0xf0, 0x03, 0xf0, 0x01,
- 0xf0, 0x00, 0x70, 0x00, 0x30, 0x00, 0x00, 0x00};
+ 0x00, 0x00, 0x30, 0x00, 0x70, 0x00, (char)0xf0, 0x00, (char)0xf0, 0x01, (char)0xf0, 0x03,
+ (char)0xf0, 0x07, (char)0xf0, 0x0f, (char)0xf0, 0x0f, (char)0xf0, 0x07, (char)0xf0, 0x03, (char)0xf0, 0x01,
+ (char)0xf0, 0x00, 0x70, 0x00, 0x30, 0x00, 0x00, 0x00};
--- a/bitmaps/todo.xbm
+++ b/bitmaps/todo.xbm
@@ -1,6 +1,6 @@
#define todo_width 16
#define todo_height 16
static char todo_bits[] = {
- 0x00, 0x00, 0xff, 0x7f, 0xff, 0x7f, 0x03, 0x60, 0x03, 0x60, 0x03, 0x60,
+ 0x00, 0x00, (char)0xff, 0x7f, (char)0xff, 0x7f, 0x03, 0x60, 0x03, 0x60, 0x03, 0x60,
0x03, 0x60, 0x03, 0x60, 0x03, 0x60, 0x03, 0x60, 0x03, 0x60, 0x03, 0x60,
- 0x03, 0x60, 0x03, 0x60, 0xff, 0x7f, 0xff, 0x7f};
+ 0x03, 0x60, 0x03, 0x60, (char)0xff, 0x7f, (char)0xff, 0x7f};
--- a/contrib/ical.xbm
+++ b/contrib/ical.xbm
@@ -1,46 +1,46 @@
#define ical_width 64
#define ical_height 64
static char ical_bits[] = {
- 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x00, 0x00, 0xff, 0xff, 0xff,
- 0xff, 0xff, 0x7f, 0x00, 0x00, 0x7f, 0x00, 0x00, 0x00, 0x80, 0x7f, 0x00,
- 0x00, 0x7f, 0xb0, 0x9d, 0x12, 0x82, 0x7f, 0x00, 0x00, 0x7f, 0x50, 0x95,
- 0x73, 0x82, 0x7f, 0x00, 0x00, 0x7f, 0x10, 0x3d, 0x52, 0x82, 0x7f, 0x00,
- 0x00, 0x7f, 0x00, 0x00, 0x00, 0x80, 0x7f, 0x00, 0x00, 0xff, 0xff, 0xff,
- 0xff, 0xff, 0x7f, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x00,
- 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x00, 0x00, 0x07, 0x41, 0x11,
- 0x04, 0x41, 0x70, 0x00, 0x00, 0x37, 0x49, 0x92, 0x55, 0x4d, 0x75, 0x00,
- 0x00, 0x27, 0x59, 0xd2, 0x24, 0x4d, 0x75, 0x00, 0x00, 0x07, 0x41, 0x12,
- 0x04, 0x41, 0x70, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x00,
- 0x00, 0xaf, 0xeb, 0x1a, 0x04, 0x41, 0x70, 0x00, 0x00, 0x57, 0x55, 0x15,
- 0x04, 0x41, 0x70, 0x00, 0x00, 0xaf, 0xeb, 0x1a, 0x04, 0x41, 0x70, 0x00,
- 0x00, 0x57, 0x55, 0x15, 0x04, 0x41, 0x70, 0x00, 0x00, 0xff, 0xff, 0xff,
- 0xff, 0xff, 0x7f, 0x00, 0x00, 0x07, 0x41, 0x10, 0x04, 0x41, 0x70, 0x00,
+ 0x00, (char)0xff, (char)0xff, (char)0xff, (char)0xff, (char)0xff, 0x7f, 0x00, 0x00, (char)0xff, (char)0xff, (char)0xff,
+ (char)0xff, (char)0xff, 0x7f, 0x00, 0x00, 0x7f, 0x00, 0x00, 0x00, (char)0x80, 0x7f, 0x00,
+ 0x00, 0x7f, (char)0xb0, (char)0x9d, 0x12, (char)0x82, 0x7f, 0x00, 0x00, 0x7f, 0x50, (char)0x95,
+ 0x73, (char)0x82, 0x7f, 0x00, 0x00, 0x7f, 0x10, 0x3d, 0x52, (char)0x82, 0x7f, 0x00,
+ 0x00, 0x7f, 0x00, 0x00, 0x00, (char)0x80, 0x7f, 0x00, 0x00, (char)0xff, (char)0xff, (char)0xff,
+ (char)0xff, (char)0xff, 0x7f, 0x00, 0x00, (char)0xff, (char)0xff, (char)0xff, (char)0xff, (char)0xff, 0x7f, 0x00,
+ 0x00, (char)0xff, (char)0xff, (char)0xff, (char)0xff, (char)0xff, 0x7f, 0x00, 0x00, 0x07, 0x41, 0x11,
+ 0x04, 0x41, 0x70, 0x00, 0x00, 0x37, 0x49, (char)0x92, 0x55, 0x4d, 0x75, 0x00,
+ 0x00, 0x27, 0x59, (char)0xd2, 0x24, 0x4d, 0x75, 0x00, 0x00, 0x07, 0x41, 0x12,
+ 0x04, 0x41, 0x70, 0x00, 0x00, (char)0xff, (char)0xff, (char)0xff, (char)0xff, (char)0xff, 0x7f, 0x00,
+ 0x00, (char)0xaf, (char)0xeb, 0x1a, 0x04, 0x41, 0x70, 0x00, 0x00, 0x57, 0x55, 0x15,
+ 0x04, 0x41, 0x70, 0x00, 0x00, (char)0xaf, (char)0xeb, 0x1a, 0x04, 0x41, 0x70, 0x00,
+ 0x00, 0x57, 0x55, 0x15, 0x04, 0x41, 0x70, 0x00, 0x00, (char)0xff, (char)0xff, (char)0xff,
+ (char)0xff, (char)0xff, 0x7f, 0x00, 0x00, 0x07, 0x41, 0x10, 0x04, 0x41, 0x70, 0x00,
0x00, 0x07, 0x41, 0x10, 0x04, 0x41, 0x70, 0x00, 0x00, 0x07, 0x41, 0x10,
0x04, 0x41, 0x70, 0x00, 0x00, 0x07, 0x41, 0x10, 0x04, 0x41, 0x70, 0x00,
- 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x00, 0x00, 0x07, 0x41, 0x10,
+ 0x00, (char)0xff, (char)0xff, (char)0xff, (char)0xff, (char)0xff, 0x7f, 0x00, 0x00, 0x07, 0x41, 0x10,
0x04, 0x41, 0x70, 0x00, 0x00, 0x07, 0x41, 0x10, 0x04, 0x41, 0x70, 0x00,
0x00, 0x07, 0x41, 0x10, 0x04, 0x41, 0x70, 0x00, 0x00, 0x07, 0x41, 0x10,
- 0x04, 0x41, 0x70, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x00,
+ 0x04, 0x41, 0x70, 0x00, 0x00, (char)0xff, (char)0xff, (char)0xff, (char)0xff, (char)0xff, 0x7f, 0x00,
0x00, 0x07, 0x41, 0x10, 0x04, 0x41, 0x70, 0x00, 0x00, 0x07, 0x41, 0x10,
0x04, 0x41, 0x70, 0x00, 0x00, 0x07, 0x41, 0x10, 0x04, 0x41, 0x70, 0x00,
- 0x00, 0x07, 0x41, 0x10, 0x04, 0x41, 0x70, 0x00, 0x00, 0xff, 0xff, 0xff,
- 0xff, 0xff, 0x7f, 0x00, 0x00, 0xf7, 0x5f, 0x10, 0xfc, 0xff, 0x7a, 0x00,
- 0x00, 0xf7, 0x5f, 0x10, 0xfe, 0xff, 0x77, 0x00, 0x00, 0xf7, 0x5f, 0x10,
- 0x3f, 0xe0, 0x7f, 0x00, 0x00, 0x37, 0x58, 0x90, 0x07, 0x82, 0x7f, 0x00,
- 0x00, 0x3f, 0xf8, 0xff, 0x03, 0x02, 0x7f, 0x00, 0x00, 0x3f, 0xf8, 0xff,
- 0x00, 0x02, 0x7c, 0x00, 0x00, 0x1c, 0x70, 0xf0, 0x00, 0x02, 0x7c, 0x00,
- 0x00, 0x1e, 0xf0, 0x70, 0x00, 0x07, 0x78, 0x00, 0x00, 0x1e, 0xf0, 0x70,
- 0x00, 0x07, 0x78, 0x00, 0x00, 0x0e, 0xe0, 0x30, 0x00, 0x07, 0x78, 0x00,
- 0x00, 0x0e, 0xe0, 0x30, 0x00, 0x07, 0x60, 0x00, 0x00, 0x0f, 0xe0, 0x31,
- 0x00, 0x07, 0x60, 0x00, 0x00, 0x07, 0xc0, 0x31, 0x00, 0x1f, 0x60, 0x00,
- 0x00, 0x07, 0xc0, 0x31, 0x00, 0xff, 0x60, 0x00, 0x00, 0x07, 0xc0, 0x31,
- 0x00, 0x1f, 0x60, 0x00, 0x80, 0x07, 0xc0, 0x33, 0x00, 0x00, 0x60, 0x00,
- 0x80, 0x03, 0x80, 0x33, 0x00, 0x00, 0x60, 0x00, 0x80, 0x03, 0x80, 0x73,
- 0x00, 0x00, 0x70, 0x00, 0x80, 0x03, 0x80, 0x73, 0x00, 0x00, 0x70, 0x00,
- 0x80, 0xff, 0xff, 0xf3, 0x00, 0x00, 0x78, 0x00, 0x80, 0xff, 0xff, 0xe3,
- 0x00, 0x00, 0x38, 0x00, 0x80, 0xff, 0xff, 0xe3, 0x01, 0x00, 0x3c, 0x00,
- 0x00, 0x00, 0x03, 0xc0, 0x03, 0x00, 0x1e, 0x00, 0x00, 0x80, 0x07, 0x80,
- 0x0f, 0x80, 0x0f, 0x00, 0x00, 0xc0, 0x0f, 0x00, 0x3f, 0xe0, 0x07, 0x00,
- 0x00, 0xc0, 0x0f, 0x00, 0xfe, 0xff, 0x03, 0x00, 0x00, 0x80, 0x07, 0x00,
- 0xf8, 0xff, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0xc0, 0x1f, 0x00, 0x00,
+ 0x00, 0x07, 0x41, 0x10, 0x04, 0x41, 0x70, 0x00, 0x00, (char)0xff, (char)0xff, (char)0xff,
+ (char)0xff, (char)0xff, 0x7f, 0x00, 0x00, (char)0xf7, 0x5f, 0x10, (char)0xfc, (char)0xff, 0x7a, 0x00,
+ 0x00, (char)0xf7, 0x5f, 0x10, (char)0xfe, (char)0xff, 0x77, 0x00, 0x00, (char)0xf7, 0x5f, 0x10,
+ 0x3f, (char)0xe0, 0x7f, 0x00, 0x00, 0x37, 0x58, (char)0x90, 0x07, (char)0x82, 0x7f, 0x00,
+ 0x00, 0x3f, (char)0xf8, (char)0xff, 0x03, 0x02, 0x7f, 0x00, 0x00, 0x3f, (char)0xf8, (char)0xff,
+ 0x00, 0x02, 0x7c, 0x00, 0x00, 0x1c, 0x70, (char)0xf0, 0x00, 0x02, 0x7c, 0x00,
+ 0x00, 0x1e, (char)0xf0, 0x70, 0x00, 0x07, 0x78, 0x00, 0x00, 0x1e, (char)0xf0, 0x70,
+ 0x00, 0x07, 0x78, 0x00, 0x00, 0x0e, (char)0xe0, 0x30, 0x00, 0x07, 0x78, 0x00,
+ 0x00, 0x0e, (char)0xe0, 0x30, 0x00, 0x07, 0x60, 0x00, 0x00, 0x0f, (char)0xe0, 0x31,
+ 0x00, 0x07, 0x60, 0x00, 0x00, 0x07, (char)0xc0, 0x31, 0x00, 0x1f, 0x60, 0x00,
+ 0x00, 0x07, (char)0xc0, 0x31, 0x00, (char)0xff, 0x60, 0x00, 0x00, 0x07, (char)0xc0, 0x31,
+ 0x00, 0x1f, 0x60, 0x00, (char)0x80, 0x07, (char)0xc0, 0x33, 0x00, 0x00, 0x60, 0x00,
+ (char)0x80, 0x03, (char)0x80, 0x33, 0x00, 0x00, 0x60, 0x00, (char)0x80, 0x03, (char)0x80, 0x73,
+ 0x00, 0x00, 0x70, 0x00, (char)0x80, 0x03, (char)0x80, 0x73, 0x00, 0x00, 0x70, 0x00,
+ (char)0x80, (char)0xff, (char)0xff, (char)0xf3, 0x00, 0x00, 0x78, 0x00, (char)0x80, (char)0xff, (char)0xff, (char)0xe3,
+ 0x00, 0x00, 0x38, 0x00, (char)0x80, (char)0xff, (char)0xff, (char)0xe3, 0x01, 0x00, 0x3c, 0x00,
+ 0x00, 0x00, 0x03, (char)0xc0, 0x03, 0x00, 0x1e, 0x00, 0x00, (char)0x80, 0x07, (char)0x80,
+ 0x0f, (char)0x80, 0x0f, 0x00, 0x00, (char)0xc0, 0x0f, 0x00, 0x3f, (char)0xe0, 0x07, 0x00,
+ 0x00, (char)0xc0, 0x0f, 0x00, (char)0xfe, (char)0xff, 0x03, 0x00, 0x00, (char)0x80, 0x07, 0x00,
+ (char)0xf8, (char)0xff, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, (char)0xc0, 0x1f, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00};

@ -1,11 +0,0 @@
--- calendar/calfile.C
+++ calendar/calfile.C
@@ -58,7 +58,7 @@
backupName = tmp;
// Get directory name for access checks
- char* lastSlash = strrchr(name, '/');
+ const char* lastSlash = strrchr(name, '/');
if (lastSlash == 0) {
/* Calendar is in current directory */
tmp = new char[3];

@ -1,33 +0,0 @@
Add LDFLAGS to linker calls
Fix deps on check targets for parallel tests
Patch by Kevin McCarthy <signals42@gmail.com>
--- Makefile.in
+++ Makefile.in
@@ -74,13 +74,13 @@
all: $(CONFIGURED) ical
ical: $(LIB3) $(LIB2) $(LIB1) $(OBJS) main.o
- $(CXXLINKER) -o $@ $(OBJS) main.o $(LIBS)
+ $(CXXLINKER) $(LDFLAGS) -o $@ $(OBJS) main.o $(LIBS)
ical-bundle: $(LIB3) $(LIB2) $(LIB1) $(OBJS) mbundle.o
- $(CXXLINKER) -o $@ $(OBJS) mbundle.o $(BLIBS)
+ $(CXXLINKER) $(LDFLAGS) -o $@ $(OBJS) mbundle.o $(BLIBS)
ical-tiny: $(LIB3) $(LIB2) $(LIB1) $(OBJS) mbundle.o
- $(CXXLINKER) -o $@ $(OBJS) mbundle.o $(TINY_BLIBS)
+ $(CXXLINKER) $(LDFLAGS) -o $@ $(OBJS) mbundle.o $(TINY_BLIBS)
$(LIB1): FRC
@echo making in calendar
@@ -195,7 +195,7 @@
check_text:
@ICAL_LIBRARY=$(srcdir) ./ical -nodisplay -f $(srcdir)/tests/no_x.tcl
-check_x:
+check_x: check_text
@ICAL_LIBRARY=$(srcdir) ./ical -f $(srcdir)/tests/x.tcl
# Rules for shipping html documentation

@ -1,412 +0,0 @@
diff -ur ical-3.0.orig/dg_item.tcl ical-3.0/dg_item.tcl
--- ical-3.0.orig/dg_item.tcl 2008-11-13 01:27:08.000000000 +0200
+++ ical-3.0/dg_item.tcl 2010-03-24 15:46:06.000000000 +0200
@@ -3,15 +3,15 @@
proc item_edit {leader item} {
global iedit
- set iedit(done) -1
+ set iedit_done -1
iedit_make
iedit_fill $item
update
wm minsize .iedit [winfo reqwidth .iedit] [winfo reqheight .iedit]
- dialog_run $leader .iedit iedit(done)
- if !$iedit(done) {return}
+ dialog_run $leader .iedit iedit_done
+ if !$iedit_done {return}
# Check that item has not been deleted concurrently
catch {
@@ -28,7 +28,7 @@
toplevel $f -class Bigdialog
wm title $f {Item Properties}
wm iconname $f Item
- wm protocol $f WM_DELETE_WINDOW {set iedit(done) 0}
+ wm protocol $f WM_DELETE_WINDOW {set iedit_done 0}
# Make the various container frames
frame $f.f1
@@ -37,8 +37,8 @@
# Make the buttons
make_buttons $f.bot 1 {
- {Cancel {set iedit(done) 0}}
- {Okay {set iedit(done) 1}}
+ {Cancel {set iedit_done 0}}
+ {Okay {set iedit_done 1}}
}
# Top-level layout
@@ -139,8 +139,8 @@
-variable iedit(todo) -onvalue 1 -offvalue 0
pack $f.todo -in $f.f2.c1 -side top -fill both
- bind $f <Control-c> {set iedit(done) 0}
- bind $f <Return> {set iedit(done) 1}
+ bind $f <Control-c> {set iedit_done 0}
+ bind $f <Return> {set iedit_done 1}
wm withdraw $f
}
diff -ur ical-3.0.orig/dg_key.tcl ical-3.0/dg_key.tcl
--- ical-3.0.orig/dg_key.tcl 2008-11-10 12:06:11.000000000 +0200
+++ ical-3.0/dg_key.tcl 2010-03-24 15:47:41.000000000 +0200
@@ -11,7 +11,7 @@
# The result is a list with two elements. The first element
# is a key sequence, and the second is a command name.
-set defkey(done) -1
+set defkey_done -1
set defkey(help) 0
set defkey(cmd) {}
@@ -36,7 +36,7 @@
toplevel $f -class Dialog
wm title $f "Define Key"
- wm protocol $f WM_DELETE_WINDOW {set defkey(done) 0}
+ wm protocol $f WM_DELETE_WINDOW {set defkey_done 0}
frame $f.top -class Pane
frame $f.mid -class Pane
@@ -44,8 +44,8 @@
make_buttons $f.bot 3 {
{Clear {defkey_clear_key}}
{Help {defkey_help_toggle}}
- {Cancel {set defkey(done) 0}}
- {Okay {set defkey(done) 1}}
+ {Cancel {set defkey_done 0}}
+ {Okay {set defkey_done 1}}
}
message $f.text -aspect 400 -text [join {
@@ -117,10 +117,10 @@
if $defkey(help) {defkey_help_toggle}
# Run dialog
- set defkey(done) -1
- dialog_run $leader $f defkey(done)
+ set defkey_done -1
+ dialog_run $leader $f defkey_done
- return $defkey(done)
+ return $defkey_done
}
proc defkey_select_command {} {
diff -ur ical-3.0.orig/dg_monthr.tcl ical-3.0/dg_monthr.tcl
--- ical-3.0.orig/dg_monthr.tcl 2008-11-10 12:06:10.000000000 +0200
+++ ical-3.0/dg_monthr.tcl 2010-03-24 15:48:57.000000000 +0200
@@ -11,13 +11,13 @@
# Hidden global variables
#
-# mr_state(done) Interaction has finished
+# mr_state_done Interaction has finished
# mr_state(item) The item being modified
# mr_state(int) Repetition interval in months
# mr_state(occ) Type of monthly occurrence
# mr_state(count:...) Count for a particular type of occurrence
-set mr_state(done) 0
+set mr_state_done 0
set mr_state(item) {}
set mr_state(occ) {}
set mr_state(int) {}
@@ -51,7 +51,7 @@
toplevel $f -class Dialog
wm title $f "Monthly Repetition"
wm iconname $f "Repeat"
- wm protocol $f WM_DELETE_WINDOW {set mr_state(done) 0}
+ wm protocol $f WM_DELETE_WINDOW {set mr_state_done 0}
frame $f.top -class Pane
frame $f.left -class Pane
@@ -61,8 +61,8 @@
pack $f.text -in $f.top -side top -expand 1 -fill both -padx 5m -pady 5m
make_buttons $f.bot 1 {
- {Cancel {set mr_state(done) 0}}
- {Okay {set mr_state(done) 1}}
+ {Cancel {set mr_state_done 0}}
+ {Okay {set mr_state_done 1}}
}
# Create interval buttons
@@ -104,8 +104,8 @@
pack $f.left -side left -expand 1 -fill both
pack $f.right -side left -expand 1 -fill both
- bind $f <Control-c> {set mr_state(done) 0}
- bind $f <Return> {set mr_state(done) 1}
+ bind $f <Control-c> {set mr_state_done 0}
+ bind $f <Return> {set mr_state_done 1}
wm withdraw $f
update
@@ -114,7 +114,7 @@
proc monthrepeat_interact {leader item anchor} {
global mr_state
set f .mr_dialog
- set mr_state(done) -1
+ set mr_state_done -1
set mr_state(int) 1
set mr_state(occ) month_day
@@ -186,6 +186,6 @@
$f.month_last_week_day configure -text "[num2text $c]-last $wday_name"
}
- dialog_run $leader $f mr_state(done)
- return $mr_state(done)
+ dialog_run $leader $f mr_state_done
+ return $mr_state_done
}
diff -ur ical-3.0.orig/dg_range.tcl ical-3.0/dg_range.tcl
--- ical-3.0.orig/dg_range.tcl 2008-11-10 12:06:09.000000000 +0200
+++ ical-3.0/dg_range.tcl 2010-03-24 15:49:57.000000000 +0200
@@ -14,11 +14,11 @@
# Hidden global variables
#
-# dr_state(done) Interaction has finished
+# dr_state_done Interaction has finished
# dr_state(start) Starting date
# dr_state(finish) Finishing date
-set dr_state(done) 0
+set dr_state_done 0
set dr_state(start) {}
set dr_state(finish) {}
@@ -47,7 +47,7 @@
toplevel $f -class Dialog
wm title $f "Select Range"
wm iconname $f "Range"
- wm protocol $f WM_DELETE_WINDOW {set dr_state(done) 0}
+ wm protocol $f WM_DELETE_WINDOW {set dr_state_done 0}
frame $f.top -class Pane
message $f.text -aspect 800 -text {Restrict item repetition range...}
@@ -62,16 +62,16 @@
pack $f.finish -in $f.mid -side top -expand 1 -fill both -padx 5m -pady 5m
make_buttons $f.bot 1 {
- {Cancel {set dr_state(done) 0}}
- {Okay {set dr_state(done) 1}}
+ {Cancel {set dr_state_done 0}}
+ {Okay {set dr_state_done 1}}
}
pack $f.top -side top -fill both -expand 1
pack $f.mid -side top -fill both -expand 1
pack $f.bot -side bottom -fill x
- bind $f <Control-c> {set dr_state(done) 0}
- bind $f <Return> {set dr_state(done) 1}
+ bind $f <Control-c> {set dr_state_done 0}
+ bind $f <Return> {set dr_state_done 1}
wm withdraw $f
update
@@ -86,9 +86,9 @@
global dr_state
set f .dr_dialog
- set dr_state(done) -1
- dialog_run $leader $f dr_state(done)
- return $dr_state(done)
+ set dr_state_done -1
+ dialog_run $leader $f dr_state_done
+ return $dr_state_done
}
proc dr_validate {args} {
diff -ur ical-3.0.orig/dg_wdays.tcl ical-3.0/dg_wdays.tcl
--- ical-3.0.orig/dg_wdays.tcl 2008-11-10 12:06:08.000000000 +0200
+++ ical-3.0/dg_wdays.tcl 2010-03-24 15:54:11.000000000 +0200
@@ -11,11 +11,11 @@
# Hidden global variables
#
-# ws_state(done) Is ws interaction finished
+# ws_state_done Is ws interaction finished
# ws_state(1..7) Set iff specified weekday was selected
# ws_state(int) Week interval
-set ws_state(done) 0
+set ws_state_done 0
foreach i {1 2 3 4 5 6 7} {
set ws_state($i) 0
}
@@ -54,7 +54,7 @@
toplevel $f -class Dialog
wm title $f {Weekly Repetition}
wm iconname $f Repeat
- wm protocol $f WM_DELETE_WINDOW {set ws_state(done) 0}
+ wm protocol $f WM_DELETE_WINDOW {set ws_state_done 0}
frame $f.top -class Pane
frame $f.left -class Pane
@@ -64,8 +64,8 @@
pack $f.text -in $f.top -side top -expand 1 -fill both -padx 5m -pady 5m
make_buttons $f.bot 1 {
- {Cancel {set ws_state(done) 0}}
- {Okay {set ws_state(done) 1}}
+ {Cancel {set ws_state_done 0}}
+ {Okay {set ws_state_done 1}}
}
# Make set of weekdays
@@ -107,8 +107,8 @@
pack $f.right -side left -expand 1 -fill both
pack $f.left -side left -expand 1 -fill both
- bind $f <Control-c> {set ws_state(done) 0}
- bind $f <Return> {set ws_state(done) 1}
+ bind $f <Control-c> {set ws_state_done 0}
+ bind $f <Return> {set ws_state_done 1}
wm withdraw $f
update
@@ -135,9 +135,9 @@
ws_reconfig
# Run dialog
- set ws_state(done) -1
- dialog_run $leader $f ws_state(done)
+ set ws_state_done -1
+ dialog_run $leader $f ws_state_done
# Construct return value
- return $ws_state(done)
+ return $ws_state_done
}
diff -ur ical-3.0.orig/help.tcl ical-3.0/help.tcl
--- ical-3.0.orig/help.tcl 2008-11-10 12:06:04.000000000 +0200
+++ ical-3.0/help.tcl 2010-03-24 15:55:03.000000000 +0200
@@ -132,7 +132,7 @@
return 0
}
-set about(done) 0
+set about_done 0
proc show_about {leader} {
global ical about
@@ -155,22 +155,22 @@
pack $t.top.author -side top -expand 1 -fill x -padx 5m -pady 5m
make_buttons $t.bot 0 {
- {{Okay} {set about(done) 1}}
+ {{Okay} {set about_done 1}}
}
pack $t.top -side top -expand 1 -fill x
pack $t.bot -side bottom -expand 1 -fill x
wm title $t {About Ical}
- wm protocol $t WM_DELETE_WINDOW {set about(done) 1}
- bind $t <Control-c> {set about(done) 1}
- bind $t <Return> {set about(done) 1}
+ wm protocol $t WM_DELETE_WINDOW {set about_done 1}
+ bind $t <Control-c> {set about_done 1}
+ bind $t <Return> {set about_done 1}
wm withdraw $t
update idletasks
}
- set about(done) 0
- dialog_run $leader $t about(done)
+ set about_done 0
+ dialog_run $leader $t about_done
return
}
diff -ur ical-3.0.orig/ical.C ical-3.0/ical.C
--- ical-3.0.orig/ical.C 2008-11-10 12:06:04.000000000 +0200
+++ ical-3.0/ical.C 2010-03-24 15:58:38.000000000 +0200
@@ -140,7 +140,7 @@
buffer.append('\0');
if (Tcl_Eval(tcl, buffer.as_pointer()) == TCL_ERROR)
- fprintf(stderr, "ical: trigger error: %s\n", tcl->result);
+ fprintf(stderr, "ical: trigger error: %s\n", Tcl_GetStringResult(tcl));
buffer.clear();
}
diff -ur ical-3.0.orig/tcllib/dg_bug.tcl ical-3.0/tcllib/dg_bug.tcl
--- ical-3.0.orig/tcllib/dg_bug.tcl 2008-11-10 12:03:23.000000000 +0200
+++ ical-3.0/tcllib/dg_bug.tcl 2010-03-24 15:57:22.000000000 +0200
@@ -11,7 +11,7 @@
#
# bug_done Is bug interaction finished
-set bug(done) no
+set bug_done no
proc bug_notify {mailer email message} {
bug_make
@@ -26,15 +26,15 @@
toplevel $f -class Dialog
wm title $f {Internal Error}
- wm protocol $f WM_DELETE_WINDOW {set bug(done) cancel}
+ wm protocol $f WM_DELETE_WINDOW {set bug_done cancel}
frame $f.top -class Pane
frame $f.mid -class Pane
make_buttons $f.bot 2 {
- {{Dismiss} {set bug(done) cancel}}
- {{Save} {set bug(done) save}}
- {{Mail Report} {set bug(done) send}}
+ {{Dismiss} {set bug_done cancel}}
+ {{Save} {set bug_done save}}
+ {{Mail Report} {set bug_done send}}
}
label $f.icon -bitmap error
@@ -57,7 +57,7 @@
pack $f.bot -side top -fill both
# XXX What bindings should we add here?
- # bind $f <Control-c><Control-c> {set bug(done) cancel}
+ # bind $f <Control-c><Control-c> {set bug_done cancel}
wm withdraw $f
update
@@ -97,13 +97,13 @@
set etext $bug(edit).text
$etext delete 1.0 end
- set bug(done) no
- dialog_run {} $f bug(done) $etext
+ set bug_done no
+ dialog_run {} $f bug_done $etext
- if ![string compare $bug(done) {cancel}] return
+ if ![string compare $bug_done {cancel}] return
set text [bug_extract]
- switch -exact -- $bug(done) {
+ switch -exact -- $bug_done {
save {
bug_save $email $text
}
diff -ur ical-3.0.orig/tests/dialog.tcl ical-3.0/tests/dialog.tcl
--- ical-3.0.orig/tests/dialog.tcl 2008-11-10 12:03:37.000000000 +0200
+++ ical-3.0/tests/dialog.tcl 2010-03-24 15:57:47.000000000 +0200
@@ -35,7 +35,7 @@
}
proc dg_bug {} {
- after 500 {set bug(done) cancel}
+ after 500 {set bug_done cancel}
expect {bug_notify cat foo "Test message"} {}
}

@ -1,62 +0,0 @@
# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=5
inherit autotools eutils epatch multilib virtualx
DESCRIPTION="Tk-based Calendar program"
HOMEPAGE="https://launchpad.net/ical-tcl"
SRC_URI="https://launchpad.net/ical-tcl/3.x/${PV}/+download/${P}.tar.gz"
LICENSE="HPND"
SLOT="0"
KEYWORDS="amd64 ppc x86"
IUSE=""
RDEPEND="
dev-lang/tcl:0
dev-lang/tk:0
"
DEPEND="${RDEPEND}"
src_prepare() {
epatch \
"${FILESDIR}"/${P}-gcc44.patch \
"${FILESDIR}"/${P}-newtcl.patch \
"${FILESDIR}"/${P}-makefile.patch \
"${FILESDIR}"/${P}-fix-c++14.patch
sed -i \
-e 's:8.4 8.3:8.6 8.5 8.4 8.3:g' \
-e 's:sys/utsname.h limits.h::' \
configure.in || die
sed -i \
-e 's:mkdir:mkdir -p:' \
-e "/LIBDIR =/s:lib:$(get_libdir):" \
-e '/MANDIR =/s:man:share/man:' \
Makefile.in || die
mv configure.{in,ac} || die
eautoconf
}
src_compile() {
emake OPTF="${CFLAGS}" CXXFLAGS="${CXXFLAGS}"
}
src_test() {
[[ ${EUID} != 0 ]] && Xemake check
}
src_install() {
emake prefix="${D}/usr" install
DOCS=( ANNOUNCE *README RWMJ-release-notes.txt TODO )
HTML_DOCS=( {.,doc}/*.html )
einstalldocs
rm -f "${D}"/usr/$(get_libdir)/ical/v3.0/contrib/README || die
}

Binary file not shown.

@ -1,4 +1,4 @@
DIST abseil-cpp-20200225.2.tar.gz 1679650 BLAKE2B bbadb2b86fd390f51322e687526c72a3b13caff6391974462a1146cc563616ce479330336a489a71e27b143e7cbea6695fc12c91fb721185a5116b3a6c5506b1 SHA512 75a607dee825e83c10dcd5e509515461f1b12c4aca861e4739ac4d41357b8e893dbfbe33873aa5c05463dde0891dedd7535af2ec59f173de29488e1b1321b335
DIST abseil-cpp-20200923.2.tar.gz 1783972 BLAKE2B 7ba01cab353de9bf34230e0efa567b1dc16680144579841a0fd127b95fb36cc8b63fc3c7da6a0a7c350c32b91955c6b6bb23a3ca52e50174a4dce5d3c1b9e936 SHA512 fdbb0f84265bc1d4f24aac0af6d0eb8cb603f801fc14d63ac1e9d3bab47703a8a2ff5f44a0a4d325819dbea50fc533d967e1bfd65004ec11ef35fadc44a2b855
DIST abseil-cpp-20200923.3.tar.gz 1783980 BLAKE2B 66d46fd6aafe0bf0d3fccd8a4e0a72fb0545a405d9c92d36ffcb1cf791b6d0eb85fd55218f740ba34c05c7bc952ad1aeaa367963b1f540f03a4f510fd02cd6d5 SHA512 7d9e2bc001a397b983afe1e5ca4d779bd27d0d30fad7f44e564a675e228f2fc29c203ef89dd1b0ff4a1832c6d99ae7627c9103a0daa6cccb426472528109ef85
DIST abseil-cpp-20210324.1.tar.gz 1774134 BLAKE2B 8dd42b3d60a38995eeeeb72ba8aaa367c3caff118d88069dba9df24b155318ffd6c4e289c263346899bf7fc0bf6e8332380407a8a93c77f8cade0e8e74743b84 SHA512 fe593ed98eeea5461abca95ebb9dd3f7e8eedaa15e009f776945fdbb6ed489c61966611c1c72558d2ccdd541b952a345e51885d522ff29542cbcc837cf565866
DIST gtest-1.10.0_p20200702.tar.gz 866900 BLAKE2B c162d47868583ba270675abe5df935b8f4b9a9c00dbdc80dd88afa7f2b98266640b32b2ea5e8f9f6d6227196b5d2f79dbfda4e9585106224e814cc1503cf777d SHA512 715d887b59b47d4691c7c90ef0cf0ffc3d1e758e500263c76b50fd506e90a9d1c390af745933cfe3f55e1edac5d72dccedef3cb9a50b71a5b796424471a3017b

@ -53,6 +53,7 @@ src_configure() {
local mycmakeargs=(
-DABSL_ENABLE_INSTALL=TRUE
-DBUILD_SHARED_LIBS=TRUE
)
cmake_src_configure
}

@ -69,6 +69,7 @@ src_configure() {
-DABSL_ENABLE_INSTALL=TRUE
-DABSL_LOCAL_GOOGLETEST_DIR="${WORKDIR}/googletest-${GTEST_COMMIT}"
-DABSL_RUN_TESTS=$(usex test)
-DBUILD_SHARED_LIBS=TRUE
$(usex cxx17 -DCMAKE_CXX_STANDARD=17 '') # it has to be a useflag for some consumers
$(usex test -DBUILD_TESTING=ON '') #intentional usex
)

@ -70,6 +70,7 @@ src_configure() {
local mycmakeargs=(
-DABSL_ENABLE_INSTALL=TRUE
-DABSL_LOCAL_GOOGLETEST_DIR="${WORKDIR}/googletest-${GTEST_COMMIT}"
-DBUILD_SHARED_LIBS=TRUE
$(usex cxx17 -DCMAKE_CXX_STANDARD=17 '') # it has to be a useflag for some consumers
$(usex test -DBUILD_TESTING=ON '') #intentional usex
)

@ -1,2 +1,2 @@
DIST notcurses-2.2.3.tar.gz 10861361 BLAKE2B e7b487e84b5defbb1208f355c85f7178b05f412c2a746a8bcecb2da7db8df32da563aeb1f1f218014a2ff9803f0984889e4341d59f585add49c944d4707e5cd4 SHA512 9c718a39352cc10e4f4cb24cd7940ccc7ac7ad1f5890f1a87166267b3c24011629464a4720f08c2b8bbf0fab2c5cb9b31fba7a43bc62ae65dff894019adece7d
DIST notcurses-doc-2.2.3.tar.gz 89550 BLAKE2B a42c74f95166e48ecff99a05d66925869a44a44c4faa867cca663d94ee340748417d6560d022fdb90c7761c19285b0c4838b75843a3d26d25182977f68a0d6ce SHA512 b61f829d1ad5f69147a7b4fe139db406d5a26683b55d72251f3e313c17f591ad4e9e868577fbecf86c4ac9959c942e244927fb29a2e44996fadde7946493ccc8
DIST notcurses-2.2.8.tar.gz 11255362 BLAKE2B d56f48ecfcfc107d696bb1da029afba8c8a29ea6f0d6317ccdd42d895d890c0cc1d46120566c2f60bd554c2a57aa60409276632216608b29469421a1c22cecf2 SHA512 7455ad1dfbeda68a0b2c35ba3bb28eab3bc0be1ca4db12ce0e3662cf12f1e541dec506c9896624f77ef8032ae6b644ee85ac5abf2272f54fb1c9038b33214892
DIST notcurses-doc-2.2.8.tar.gz 115654 BLAKE2B c770f81a3ad4071f75e84caaa4370f26e68ced2489586ae857a8e3c2cf998e0d7b5d84b8fd09150ace51898731150e499f648ad2e6d5be442df11c648ba58ccd SHA512 1a2c8931bd4f68dfdd2fa921d06b639d5fa382d826d5c9e0186b4d0160f220f3f32b1eb19f17136c4d452c8afd9f6fff1b4f463a11d847ef9216ddb94b5c8ab8

@ -14,9 +14,9 @@ LICENSE="Apache-2.0"
SLOT="0"
KEYWORDS="~amd64 ~x86"
DEPEND="dev-libs/libunistring:=
DEPEND="dev-libs/libunistring
media-video/ffmpeg
>=sys-libs/readline-8.0:="
>=sys-libs/readline-8.0"
RDEPEND="${DEPEND}"
src_configure() {
@ -45,6 +45,6 @@ src_install() {
# x.y.1 or x.y.3, to install the source dir as a man page.
# exploit the fact that there's a bijection from html<>man.
for i in ../*.html ; do
doman ../$(basename ${i} .html)
doman ../$(basename ${i} .html || die)
done
}

Binary file not shown.

@ -1,5 +1,6 @@
DIST erlang-23.2.7.tar.gz 56600356 BLAKE2B 84daf8810716ac02b50527805b834f9f2ae83fc7ebd89a22e4cba34133a52347f53a72ba65614b492bf1932d0dc47eb68c9ce8731cdfaeecdf57b9f20bde32e8 SHA512 1e94b641644edb1edc3d15679222dd5d198abf1cae6daa4b91304317f8df21514029971f208767396625c0a0be7107c357c9ef80974c9865113a760aa2655220
DIST erlang-23.3.1.tar.gz 56654422 BLAKE2B b1ccd870d4a47f12d1a65b424d6c6b0f59a4654c0779c595fb28fdc2d3e179bb9b12d2473770b239b65665b2f6a3281d239f9fb3d6b86548df3ee69fce8fe5ed SHA512 03d4be9b25a14359e9f8db52d8e7d8edff1e8c53686a189caae15373c7e15d03f05e1138c549b8b41b8e6b7c55ab154cea47356f6fe79f7b72d5fb4ce759c4b0
DIST erlang-23.3.2.tar.gz 56662450 BLAKE2B 70ead26fe6a416c1b89bc9f8ad8d368bd38d994f9aa9967c916ccbef25aac7a059d89422e0d3b03397b08f1376c9e2eef4e827ecaa9d1114c453771e51acb490 SHA512 bb3dc1d827314b71f7e4da2082681e449859a69589d566a810baf554131e239ad3fe0555f352d69506467162016d6c6864abb20926843ee4da5876b26650810e
DIST erlang_doc_html_23.2.tar.gz 36537148 BLAKE2B b19d3fb5836b50512db6913ccb9116bc06ef4677c9514db89714ac72a9e7569b2c52612c357ccbf9a12610000885cbc8a43cc17f80c533a3c65af89c1b592ba6 SHA512 0d334dfe46ecffd6ff720d176c4514e2d49ba1b5feccd80f8392a8335100a6c289207431d2c0da02043c923de083290f9fd23726a1d1481508acdd7596f67ea4
DIST erlang_doc_html_23.3.tar.gz 36224657 BLAKE2B 7e2a3e16f4cfa0f15c01074740e02af7a45b480b4a94e764463717658ab7e5d0281f928c3ec585582b10168645e3e06cfe72cf6a0ba1b88f539b80f2b7ad99be SHA512 8be4aae46839239604b875b39339e7b6b6c677c099b3d749d5f1041c4508c1c3b4aa8136a93df12b1e5cb6333ef907276f5965c9726ed2b9e77a6043c8ef53b1
DIST erlang_doc_man_23.2.tar.gz 1386417 BLAKE2B 91fb2646461330c2f3793e7819e4c77ba9259366098b710fd102ffbcbcf38fa84ad720613313e3c59c1d419aaddd5a1a85d26c5d41a71d6692d428a494f57012 SHA512 464fa2c3608a6c096a241e5fc2cee710ef51394b169e3b3ce3ab5f69d847437c54780d4afc1a799d13f88ea88ac64056b19bff4d927e1e6bbe54a773b0ccd89d

@ -0,0 +1,158 @@
# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
WX_GTK_VER="3.0-gtk3"
inherit elisp-common java-pkg-opt-2 systemd wxwidgets
# NOTE: If you need symlinks for binaries please tell maintainers or
# open up a bug to let it be created.
UPSTREAM_V="$(ver_cut 1-2)"
DESCRIPTION="Erlang programming language, runtime environment and libraries (OTP)"
HOMEPAGE="https://www.erlang.org/"
SRC_URI="https://github.com/erlang/otp/archive/OTP-${PV}.tar.gz -> ${P}.tar.gz
http://erlang.org/download/otp_doc_man_${UPSTREAM_V}.tar.gz -> ${PN}_doc_man_${UPSTREAM_V}.tar.gz
doc? ( http://erlang.org/download/otp_doc_html_${UPSTREAM_V}.tar.gz -> ${PN}_doc_html_${UPSTREAM_V}.tar.gz )"
LICENSE="Apache-2.0"
# We use this subslot because Compiled HiPE Code can be loaded on the exact
# same build of ERTS that was used when compiling the code. See
# http://erlang.org/doc/system_principles/misc.html for more information.
SLOT="0/${PV}"
KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
IUSE="doc emacs +hipe java +kpoll libressl odbc sctp ssl systemd tk wxwidgets"
RDEPEND="
acct-group/epmd
acct-user/epmd
sys-libs/ncurses:0
sys-libs/zlib
emacs? ( >=app-editors/emacs-23.1:* )
java? ( >=virtual/jdk-1.8:* )
odbc? ( dev-db/unixODBC )
sctp? ( net-misc/lksctp-tools )
ssl? (
!libressl? ( >=dev-libs/openssl-0.9.7d:0= )
libressl? ( dev-libs/libressl:0= )
)
systemd? ( sys-apps/systemd )
wxwidgets? ( x11-libs/wxGTK:${WX_GTK_VER}[X,opengl] )
"
DEPEND="${RDEPEND}
dev-lang/perl
"
S="${WORKDIR}/otp-OTP-${PV}"
PATCHES=(
"${FILESDIR}"/18.2.1-wx3.0.patch
"${FILESDIR}"/${PN}-22.0-dont-ignore-LDFLAGS.patch
)
SITEFILE=50"${PN}"-gentoo.el
src_prepare() {
default
./otp_build autoconf || die
}
src_configure() {
use wxwidgets && setup-wxwidgets
local myconf=(
--disable-builtin-zlib
$(use_enable hipe)
$(use_enable kpoll kernel-poll)
$(use_with java javac)
$(use_enable sctp)
$(use_with ssl ssl "${EPREFIX}"/usr)
$(use_enable ssl dynamic-ssl-lib)
$(use_enable systemd)
$(usex wxwidgets "--with-wx-config=${WX_CONFIG}" "--with-wxdir=/dev/null")
)
econf "${myconf[@]}"
}
src_compile() {
emake
if use emacs ; then
pushd lib/tools/emacs &>/dev/null || die
elisp-compile *.el
popd &>/dev/null || die
fi
}
extract_version() {
local path="$1"
local var_name="$2"
sed -n -e "/^${var_name} = \(.*\)$/s::\1:p" "${S}/${path}/vsn.mk" || die "extract_version() failed"
}
src_install() {
local erl_libdir_rel="$(get_libdir)/erlang"
local erl_libdir="/usr/${erl_libdir_rel}"
local erl_interface_ver="$(extract_version lib/erl_interface EI_VSN)"
local erl_erts_ver="$(extract_version erts VSN)"
local my_manpath="/usr/share/${PN}/man"
[[ -z "${erl_erts_ver}" ]] && die "Couldn't determine erts version"
[[ -z "${erl_interface_ver}" ]] && die "Couldn't determine interface version"
emake INSTALL_PREFIX="${D}" install
if use doc ; then
# Note: we explicitly install docs into:
# /usr/share/doc/${PF}/{doc,lib,erts-*}
# To maintain that layout we gather everything in 'html-docs'.
# See bug #684376.
mkdir html-docs || die
mv "${WORKDIR}"/doc "${WORKDIR}"/lib "${WORKDIR}"/erts-* html-docs/ || die
local DOCS=( "AUTHORS" "HOWTO"/* "README.md" "CONTRIBUTING.md" html-docs/. )
docompress -x /usr/share/doc/${PF}
else
local DOCS=("README.md")
fi
einstalldocs
dosym "../${erl_libdir_rel}/bin/erl" /usr/bin/erl
dosym "../${erl_libdir_rel}/bin/erlc" /usr/bin/erlc
dosym "../${erl_libdir_rel}/bin/escript" /usr/bin/escript
dosym "../${erl_libdir_rel}/lib/erl_interface-${erl_interface_ver}/bin/erl_call" /usr/bin/erl_call
dosym "../${erl_libdir_rel}/erts-${erl_erts_ver}/bin/beam.smp" /usr/bin/beam.smp
## Clean up the no longer needed files
rm "${ED}/${erl_libdir}/Install" || die
insinto "${my_manpath}"
doins -r "${WORKDIR}"/man/*
# extend MANPATH, so the normal man command can find it
# see bug 189639
newenvd - "90erlang" <<-_EOF_
MANPATH="${my_manpath}"
_EOF_
if use emacs ; then
elisp-install erlang lib/tools/emacs/*.{el,elc}
sed -e "s:/usr/share:${EPREFIX}/usr/share:g" \
"${FILESDIR}/${SITEFILE}" > "${T}/${SITEFILE}" || die
elisp-site-file-install "${T}/${SITEFILE}"
fi
newinitd "${FILESDIR}"/epmd.init-r2 epmd
newconfd "${FILESDIR}"/epmd.confd-r2 epmd
use systemd && systemd_newunit "${FILESDIR}"/epmd.service-r1 epmd.service
}
pkg_postinst() {
use emacs && elisp-site-regen
}
pkg_postrm() {
use emacs && elisp-site-regen
}

@ -1,4 +1,6 @@
DIST php-7.3.27.tar.xz 12137924 BLAKE2B f4648fdc2b8903ce1b68221eeb49e7764c5446a3d0d0d93e9cd2d8b4cb08e57229261f6fac4ebf35127e94afd5f157ec8f27659ce463e281784c755a3759481e SHA512 a5c186663d656b473f6165b433077057972b1454013ca0f99831be61bd7b7f1c841b8dae69951fa371f678ea3f0e5410518427ee08cb20611bfc00f263d4d47a
DIST php-7.3.28.tar.xz 12139380 BLAKE2B 696c573878866e97fcae5fe3e33e83e75bf706d0eec2a66b2532ec54ce730e3f4b3fa6f0659ebf14193b6b2a6292d624bf478706790aab60b13b5cea0a1299fb SHA512 91f4f23fea6e2c5ea1fa5774075e1b1f7cfcc46064ab0d2f03e4f1b9b6c3dd7fd5a59854ed3fe3a8e2962283045f6a1c3273438b4bc0c68b11f41b9338f44274
DIST php-7.4.15.tar.xz 10332360 BLAKE2B 3217378a2fa9e3cd030f585696ac48c50bf4f2509401276783ceb3c757155fb4a06dde8fbb93588e96b16f1f8bbcb32337f58a31c2c0c2009d3659136453c4e1 SHA512 51a815852c08518d6706fc719e3bafd214889580cc5ca0e5049ae7e8f6173e83b9486bc9a69afd1ea4ab1778bb2879bd917595cd04cbcc50b182a10230f08175
DIST php-7.4.16.tar.xz 10334672 BLAKE2B 685717509115e9607fb8ff4ae439bd3b70e5c1f2a11ab83f4944be74cb1502868b9e3aceb6898288ae6e5cdd50c8dba294c03618eaa7accd10c0b425069ef0cb SHA512 a7845fe0a7c334829bfa9518d3f2947036e1b03c8f4346622f9ab37563ff3af03f6559878b83aa0e6ad69e9919b6478345a0cc6ec59161ef36c64a5073e83f84
DIST php-8.0.3.tar.xz 10755796 BLAKE2B 5dd6afe985b4f5e33f456f05edda0207d8dfffbdc35d0b2290e1bd30a93bcfd94d6ef23e7d2c8d77b774a7ff95f49832687c75593d7ab38704b60ba3d9331598 SHA512 9b3631fea5280ed11c14a3ef1badb3da5b8ab19f29faa6b828ab033008ebebc487013d74d401d10b9cf21f354cd81100ba83562f3f080e23220ad38c02fb5a0d
DIST php-8.0.5.tar.xz 10666412 BLAKE2B 4f3d0c1ab1aa998889abd7488c800216bd05c41996171929678fc084a2485d4199b49c0bc748612cf2cd1d238619fd183971d043fb8ca72db0b8dec6e2860566 SHA512 f128e1aa37dd808ec1626b6eb5ab7cc76575772ad86f1f640114186a10ffb79bdb07f0b30267ce316c7a54fc6397fa8a41e3476fee52cbe6a7b900eb5c6b83a0

@ -0,0 +1,761 @@
# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="7"
inherit flag-o-matic systemd autotools
MY_PV=${PV/_rc/RC}
DESCRIPTION="The PHP language runtime engine"
HOMEPAGE="https://www.php.net/"
SRC_URI="https://www.php.net/distributions/${P}.tar.xz"
LICENSE="PHP-3.01
BSD
Zend-2.0
bcmath? ( LGPL-2.1+ )
fpm? ( BSD-2 )
gd? ( gd )
unicode? ( BSD-2 LGPL-2.1 )"
SLOT="$(ver_cut 1-2)"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos"
S="${WORKDIR}/${PN}-${MY_PV}"
# We can build the following SAPIs in the given order
SAPIS="embed cli cgi fpm apache2 phpdbg"
# SAPIs and SAPI-specific USE flags (cli SAPI is default on):
IUSE="${IUSE}
${SAPIS/cli/+cli}
threads"
IUSE="${IUSE} acl argon2 bcmath berkdb bzip2 calendar cdb cjk
coverage +ctype curl debug
enchant exif +fileinfo +filter firebird
+flatfile ftp gd gdbm gmp +hash +iconv imap inifile
intl iodbc ipv6 +jit +json kerberos ldap ldap-sasl libedit libressl lmdb
mhash mssql mysql mysqli nls
oci8-instant-client odbc +opcache pcntl pdo +phar +posix postgres qdbm
readline recode selinux +session session-mm sharedmem
+simplexml snmp soap sockets sodium spell sqlite ssl
sysvipc systemd test tidy +tokenizer tokyocabinet truetype unicode wddx webp
+xml xmlreader xmlwriter xmlrpc xpm xslt zip zip-encryption zlib"
# The supported (that is, autodetected) versions of BDB are listed in
# the ./configure script. Other versions *work*, but we need to stick to
# the ones that can be detected to avoid a repeat of bug #564824.
COMMON_DEPEND="
>=app-eselect/eselect-php-0.9.1[apache2?,fpm?]
>=dev-libs/libpcre2-10.30[jit?,unicode]
fpm? ( acl? ( sys-apps/acl ) )
apache2? ( www-servers/apache[apache2_modules_unixd(+),threads=] )
argon2? ( app-crypt/argon2:= )
berkdb? ( || ( sys-libs/db:5.3
sys-libs/db:5.1
sys-libs/db:4.8
sys-libs/db:4.7
sys-libs/db:4.6
sys-libs/db:4.5 ) )
bzip2? ( app-arch/bzip2:0= )
cdb? ( || ( dev-db/cdb dev-db/tinycdb ) )
coverage? ( dev-util/lcov )
curl? ( >=net-misc/curl-7.10.5 )
enchant? ( <app-text/enchant-2.0:0 )
firebird? ( dev-db/firebird )
gd? ( >=virtual/jpeg-0-r3:0 media-libs/libpng:0= >=sys-libs/zlib-1.2.0.4 )
gdbm? ( >=sys-libs/gdbm-1.8.0:0= )
gmp? ( dev-libs/gmp:0= )
iconv? ( virtual/libiconv )
imap? ( >=virtual/imap-c-client-2[kerberos=,ssl=] )
intl? ( dev-libs/icu:= )
iodbc? ( dev-db/libiodbc )
kerberos? ( virtual/krb5 )
ldap? ( >=net-nds/openldap-1.2.11 )
ldap-sasl? ( dev-libs/cyrus-sasl >=net-nds/openldap-1.2.11 )
libedit? ( dev-libs/libedit )
lmdb? ( dev-db/lmdb:= )
mssql? ( dev-db/freetds[mssql] )
nls? ( sys-devel/gettext )
oci8-instant-client? ( dev-db/oracle-instantclient[sdk] )
odbc? ( >=dev-db/unixODBC-1.8.13 )
postgres? ( dev-db/postgresql:* )
qdbm? ( dev-db/qdbm )
readline? ( sys-libs/readline:0= )
recode? ( app-text/recode:0= )
session-mm? ( dev-libs/mm )
simplexml? ( >=dev-libs/libxml2-2.6.8 )
snmp? ( >=net-analyzer/net-snmp-5.2 )
soap? ( >=dev-libs/libxml2-2.6.8 )
sodium? ( dev-libs/libsodium:= )
spell? ( >=app-text/aspell-0.50 )
sqlite? ( >=dev-db/sqlite-3.7.6.3 )
ssl? (
!libressl? ( >=dev-libs/openssl-1.0.1:0= )
libressl? ( dev-libs/libressl:0= )
)
tidy? ( || ( app-text/tidy-html5 app-text/htmltidy ) )
tokyocabinet? ( dev-db/tokyocabinet )
truetype? ( =media-libs/freetype-2* )
unicode? ( dev-libs/oniguruma:= )
wddx? ( >=dev-libs/libxml2-2.6.8 )
webp? ( media-libs/libwebp:0= )
xml? ( >=dev-libs/libxml2-2.6.8 )
xmlrpc? ( >=dev-libs/libxml2-2.6.8 virtual/libiconv )
xmlreader? ( >=dev-libs/libxml2-2.6.8 )
xmlwriter? ( >=dev-libs/libxml2-2.6.8 )
xpm? ( x11-libs/libXpm )
xslt? ( dev-libs/libxslt >=dev-libs/libxml2-2.6.8 )
zip? ( >=sys-libs/zlib-1.2.0.4:0= )
zip-encryption? ( >=dev-libs/libzip-1.2.0:= )
zlib? ( >=sys-libs/zlib-1.2.0.4:0= )
"
RDEPEND="${COMMON_DEPEND}
virtual/mta
fpm? (
selinux? ( sec-policy/selinux-phpfpm )
systemd? ( sys-apps/systemd ) )"
# Bison isn't actually needed when building from a release tarball
# However, the configure script will warn if it's absent or if you
# have an incompatible version installed. See bug 593278.
DEPEND="${COMMON_DEPEND}
app-arch/xz-utils
>=sys-devel/bison-3.0.1"
BDEPEND="virtual/pkgconfig"
# Without USE=readline or libedit, the interactive "php -a" CLI will hang.
# The Oracle instant client provides its own incompatible ldap library.
REQUIRED_USE="
|| ( cli cgi fpm apache2 embed phpdbg )
cli? ( ^^ ( readline libedit ) )
truetype? ( gd zlib )
webp? ( gd zlib )
cjk? ( gd zlib )
exif? ( gd zlib )
xpm? ( gd zlib )
gd? ( zlib )
simplexml? ( xml )
soap? ( xml )
wddx? ( xml )
xmlrpc? ( || ( xml iconv ) )
xmlreader? ( xml )
xslt? ( xml )
ldap-sasl? ( ldap )
mhash? ( hash )
oci8-instant-client? ( !ldap )
phar? ( hash )
qdbm? ( !gdbm )
readline? ( !libedit )
recode? ( !imap !mysqli !mysql )
session-mm? ( session !threads )
mysql? ( || ( mysqli pdo ) )
zip-encryption? ( zip )
"
RESTRICT="!test? ( test )"
PATCHES=(
"${FILESDIR}/php-freetype-2.9.1.patch"
)
PHP_MV="$(ver_cut 1)"
php_install_ini() {
local phpsapi="${1}"
# work out where we are installing the ini file
php_set_ini_dir "${phpsapi}"
# Always install the production INI file, bug 611214.
local phpinisrc="php.ini-production-${phpsapi}"
cp php.ini-production "${phpinisrc}" || die
# default to /tmp for save_path, bug #282768
sed -e 's|^;session.save_path .*$|session.save_path = "'"${EPREFIX}"'/tmp"|g' -i "${phpinisrc}" || die
# Set the extension dir
sed -e "s|^extension_dir .*$|extension_dir = ${extension_dir}|g" \
-i "${phpinisrc}" || die
# Set the include path to point to where we want to find PEAR packages
sed -e 's|^;include_path = ".:/php/includes".*|include_path = ".:'"${EPREFIX}"'/usr/share/php'${PHP_MV}':'"${EPREFIX}"'/usr/share/php"|' -i "${phpinisrc}" || die
insinto "${PHP_INI_DIR#${EPREFIX}}"
newins "${phpinisrc}" php.ini
elog "Installing php.ini for ${phpsapi} into ${PHP_INI_DIR#${EPREFIX}}"
elog
dodir "${PHP_EXT_INI_DIR#${EPREFIX}}"
dodir "${PHP_EXT_INI_DIR_ACTIVE#${EPREFIX}}"
if use opcache; then
elog "Adding opcache to $PHP_EXT_INI_DIR"
echo "zend_extension=${PHP_DESTDIR}/$(get_libdir)/opcache.so" >> \
"${D}/${PHP_EXT_INI_DIR}"/opcache.ini
dosym "../ext/opcache.ini" \
"${PHP_EXT_INI_DIR_ACTIVE#${EPREFIX}}/opcache.ini"
fi
# SAPI-specific handling
if [[ "${sapi}" == "fpm" ]] ; then
einfo "Installing FPM config files php-fpm.conf and www.conf"
insinto "${PHP_INI_DIR#${EPREFIX}}"
doins sapi/fpm/php-fpm.conf
insinto "${PHP_INI_DIR#${EPREFIX}}/fpm.d"
doins sapi/fpm/www.conf
fi
dodoc php.ini-{development,production}
}
php_set_ini_dir() {
PHP_INI_DIR="${EPREFIX}/etc/php/${1}-php${SLOT}"
PHP_EXT_INI_DIR="${PHP_INI_DIR}/ext"
PHP_EXT_INI_DIR_ACTIVE="${PHP_INI_DIR}/ext-active"
}
src_prepare() {
default
# In php-7.x, the FPM pool configuration files have been split off
# of the main config. By default the pool config files go in
# e.g. /etc/php-fpm.d, which isn't slotted. So here we move the
# include directory to a subdirectory "fpm.d" of $PHP_INI_DIR. Later
# we'll install the pool configuration file "www.conf" there.
php_set_ini_dir fpm
sed -i "s~^include=.*$~include=${PHP_INI_DIR}/fpm.d/*.conf~" \
sapi/fpm/php-fpm.conf.in \
|| die 'failed to move the include directory in php-fpm.conf'
# Bug 669566 - necessary so that build tools are updated for commands like pecl
# Force rebuilding aclocal.m4
rm -f aclocal.m4 || die "failed to remove aclocal.m4 in src_prepare"
eautoreconf
}
src_configure() {
addpredict /usr/share/snmp/mibs/.index #nowarn
addpredict /var/lib/net-snmp/mib_indexes #nowarn
PHP_DESTDIR="${EPREFIX}/usr/$(get_libdir)/php${SLOT}"
# The php-fpm config file wants localstatedir to be ${EPREFIX}/var
# and not the Gentoo default ${EPREFIX}/var/lib. See bug 572002.
local our_conf=(
--prefix="${PHP_DESTDIR}"
--mandir="${PHP_DESTDIR}/man"
--infodir="${PHP_DESTDIR}/info"
--libdir="${PHP_DESTDIR}/lib"
--with-libdir="$(get_libdir)"
--localstatedir="${EPREFIX}/var"
--without-pear
$(use_enable threads maintainer-zts)
)
our_conf+=(
$(use_with argon2 password-argon2 "${EPREFIX}/usr")
$(use_enable bcmath bcmath)
$(use_with bzip2 bz2 "${EPREFIX}/usr")
$(use_enable calendar calendar)
$(use_enable coverage gcov)
$(use_enable ctype ctype)
$(use_with curl curl "${EPREFIX}/usr")
$(use_enable xml dom)
$(use_with enchant enchant "${EPREFIX}/usr")
$(use_enable exif exif)
$(use_enable fileinfo fileinfo)
$(use_enable filter filter)
$(use_enable ftp ftp)
$(use_with nls gettext "${EPREFIX}/usr")
$(use_with gmp gmp "${EPREFIX}/usr")
$(use_enable hash hash)
$(use_with mhash mhash "${EPREFIX}/usr")
$(use_with iconv iconv \
$(use elibc_glibc || use elibc_musl || use elibc_FreeBSD || echo "${EPREFIX}/usr"))
$(use_enable intl intl)
$(use_enable ipv6 ipv6)
$(use_enable json json)
$(use_with kerberos kerberos "${EPREFIX}/usr")
$(use_enable xml libxml)
$(use_with xml libxml-dir "${EPREFIX}/usr")
$(use_enable unicode mbstring)
$(use_with unicode onig "${EPREFIX}/usr")
$(use_with ssl openssl "${EPREFIX}/usr")
$(use_with ssl openssl-dir "${EPREFIX}/usr")
$(use_enable pcntl pcntl)
$(use_enable phar phar)
$(use_enable pdo pdo)
$(use_enable opcache opcache)
$(use_with postgres pgsql "${EPREFIX}/usr")
$(use_enable posix posix)
$(use_with spell pspell "${EPREFIX}/usr")
$(use_with recode recode "${EPREFIX}/usr")
$(use_enable simplexml simplexml)
$(use_enable sharedmem shmop)
$(use_with snmp snmp "${EPREFIX}/usr")
$(use_enable soap soap)
$(use_enable sockets sockets)
$(use_with sodium sodium "${EPREFIX}/usr")
$(use_with sqlite sqlite3 "${EPREFIX}/usr")
$(use_enable sysvipc sysvmsg)
$(use_enable sysvipc sysvsem)
$(use_enable sysvipc sysvshm)
$(use_with tidy tidy "${EPREFIX}/usr")
$(use_enable tokenizer tokenizer)
$(use_enable wddx wddx)
$(use_enable xml xml)
$(use_enable xmlreader xmlreader)
$(use_enable xmlwriter xmlwriter)
$(use_with xmlrpc xmlrpc)
$(use_with xslt xsl "${EPREFIX}/usr")
$(use_enable zip zip)
$(use_with zip-encryption libzip "${EPREFIX}/usr")
$(use_with zlib zlib "${EPREFIX}/usr")
$(use_enable debug debug)
)
# DBA support
if use cdb || use berkdb || use flatfile || use gdbm || use inifile \
|| use qdbm || use lmdb || use tokyocabinet ; then
our_conf+=( "--enable-dba${shared}" )
fi
# DBA drivers support
our_conf+=(
$(use_with cdb cdb)
$(use_with berkdb db4 "${EPREFIX}/usr")
$(use_enable flatfile flatfile)
$(use_with gdbm gdbm "${EPREFIX}/usr")
$(use_enable inifile inifile)
$(use_with qdbm qdbm "${EPREFIX}/usr")
$(use_with lmdb lmdb "${EPREFIX}/usr")
)
# Support for the GD graphics library
our_conf+=(
$(use_with truetype freetype-dir "${EPREFIX}/usr")
$(use_enable cjk gd-jis-conv)
$(use_with gd jpeg-dir "${EPREFIX}/usr")
$(use_with gd png-dir "${EPREFIX}/usr")
$(use_with xpm xpm-dir "${EPREFIX}/usr")
)
if use webp; then
our_conf+=( --with-webp-dir="${EPREFIX}/usr" )
fi
# enable gd last, so configure can pick up the previous settings
our_conf+=( $(use_with gd gd) )
# IMAP support
if use imap ; then
our_conf+=(
$(use_with imap imap "${EPREFIX}/usr")
$(use_with ssl imap-ssl "${EPREFIX}/usr")
)
fi
# Interbase/firebird support
our_conf+=( $(use_with firebird interbase "${EPREFIX}/usr") )
# LDAP support
if use ldap ; then
our_conf+=(
$(use_with ldap ldap "${EPREFIX}/usr")
$(use_with ldap-sasl ldap-sasl "${EPREFIX}/usr")
)
fi
# MySQL support
local mysqllib="mysqlnd"
local mysqlilib="mysqlnd"
our_conf+=( $(use_with mysqli mysqli "${mysqlilib}") )
local mysqlsock="${EPREFIX}/var/run/mysqld/mysqld.sock"
if use mysql || use mysqli ; then
our_conf+=( $(use_with mysql mysql-sock "${mysqlsock}") )
fi
# ODBC support
our_conf+=(
$(use_with odbc unixODBC "${EPREFIX}/usr")
$(use_with iodbc iodbc "${EPREFIX}/usr")
)
# Oracle support
our_conf+=( $(use_with oci8-instant-client oci8) )
# PDO support
if use pdo ; then
our_conf+=(
$(use_with mssql pdo-dblib "${EPREFIX}/usr")
$(use_with mysql pdo-mysql "${mysqllib}")
$(use_with postgres pdo-pgsql)
$(use_with sqlite pdo-sqlite "${EPREFIX}/usr")
$(use_with firebird pdo-firebird "${EPREFIX}/usr")
$(use_with odbc pdo-odbc "unixODBC,${EPREFIX}/usr")
$(use_with oci8-instant-client pdo-oci)
)
fi
# readline/libedit support
our_conf+=(
$(use_with readline readline "${EPREFIX}/usr")
$(use_with libedit libedit "${EPREFIX}/usr")
)
# Session support
if use session ; then
our_conf+=( $(use_with session-mm mm "${EPREFIX}/usr") )
else
our_conf+=( $(use_enable session session) )
fi
# Use pic for shared modules such as apache2's mod_php
our_conf+=( --with-pic )
# we use the system copy of pcre
# --with-pcre-regex affects ext/pcre
# --with-pcre-dir affects ext/filter and ext/zip
# --with-pcre-valgrind cannot be enabled with system pcre
our_conf+=(
--with-pcre-regex="${EPREFIX}/usr"
--with-pcre-dir="${EPREFIX}/usr"
--without-pcre-valgrind
$(use_with jit pcre-jit)
)
# Catch CFLAGS problems
# Fixes bug #14067.
# Changed order to run it in reverse for bug #32022 and #12021.
replace-cpu-flags "k6*" "i586"
# Cache the ./configure test results between SAPIs.
our_conf+=( --cache-file="${T}/config.cache" )
# Support user-passed configuration parameters
our_conf+=( ${EXTRA_ECONF:-} )
# Support the Apache2 extras, they must be set globally for all
# SAPIs to work correctly, especially for external PHP extensions
local one_sapi
local sapi
mkdir -p "${WORKDIR}/sapis-build" || die
for one_sapi in $SAPIS ; do
use "${one_sapi}" || continue
php_set_ini_dir "${one_sapi}"
# The BUILD_DIR variable is used to determine where to output
# the files that autotools creates. This was all originally
# based on the autotools-utils eclass.
BUILD_DIR="${WORKDIR}/sapis-build/${one_sapi}"
cp -a "${S}" "${BUILD_DIR}" || die
cd "${BUILD_DIR}" || die
local sapi_conf=(
--with-config-file-path="${PHP_INI_DIR}"
--with-config-file-scan-dir="${PHP_EXT_INI_DIR_ACTIVE}"
)
for sapi in $SAPIS ; do
case "$sapi" in
cli|cgi|embed|fpm|phpdbg)
if [[ "${one_sapi}" == "${sapi}" ]] ; then
sapi_conf+=( "--enable-${sapi}" )
if [[ "fpm" == "${sapi}" ]] ; then
sapi_conf+=(
$(use_with acl fpm-acl)
$(use_with systemd fpm-systemd)
)
fi
else
sapi_conf+=( "--disable-${sapi}" )
fi
;;
apache2)
if [[ "${one_sapi}" == "${sapi}" ]] ; then
sapi_conf+=( --with-apxs2="${EPREFIX}/usr/bin/apxs" )
else
sapi_conf+=( --without-apxs2 )
fi
;;
esac
done
# Construct the $myeconfargs array by concatenating $our_conf
# (the common args) and $sapi_conf (the SAPI-specific args).
local myeconfargs=( "${our_conf[@]}" )
myeconfargs+=( "${sapi_conf[@]}" )
pushd "${BUILD_DIR}" > /dev/null || die
econf "${myeconfargs[@]}"
popd > /dev/null || die
done
}
src_compile() {
# snmp seems to run during src_compile, too (bug #324739)
addpredict /usr/share/snmp/mibs/.index #nowarn
addpredict /var/lib/net-snmp/mib_indexes #nowarn
local sapi
for sapi in ${SAPIS} ; do
if use "${sapi}"; then
cd "${WORKDIR}/sapis-build/$sapi" || \
die "Failed to change dir to ${WORKDIR}/sapis-build/$1"
emake
fi
done
}
src_install() {
# see bug #324739 for what happens when we don't have that
addpredict /usr/share/snmp/mibs/.index #nowarn
# grab the first SAPI that got built and install common files from there
local first_sapi="", sapi=""
for sapi in $SAPIS ; do
if use $sapi ; then
first_sapi=$sapi
break
fi
done
# Makefile forgets to create this before trying to write to it...
dodir "${PHP_DESTDIR#${EPREFIX}}/bin"
# Install php environment (without any sapis)
cd "${WORKDIR}/sapis-build/$first_sapi" || die
emake INSTALL_ROOT="${D}" \
install-build install-headers install-programs
local extension_dir="$("${ED}/${PHP_DESTDIR#${EPREFIX}}/bin/php-config" --extension-dir)"
# Create the directory where we'll put version-specific php scripts
keepdir "/usr/share/php${PHP_MV}"
local file=""
local sapi_list=""
for sapi in ${SAPIS}; do
if use "${sapi}" ; then
einfo "Installing SAPI: ${sapi}"
cd "${WORKDIR}/sapis-build/${sapi}" || die
if [[ "${sapi}" == "apache2" ]] ; then
# We're specifically not using emake install-sapi as libtool
# may cause unnecessary relink failures (see bug #351266)
insinto "${PHP_DESTDIR#${EPREFIX}}/apache2/"
newins ".libs/libphp${PHP_MV}$(get_libname)" \
"libphp${PHP_MV}$(get_libname)"
keepdir "/usr/$(get_libdir)/apache2/modules"
else
# needed each time, php_install_ini would reset it
local dest="${PHP_DESTDIR#${EPREFIX}}"
into "${dest}"
case "$sapi" in
cli)
source="sapi/cli/php"
# Install the "phar" archive utility.
if use phar ; then
emake INSTALL_ROOT="${D}" install-pharcmd
dosym "..${dest#/usr}/bin/phar" "/usr/bin/phar${SLOT}"
fi
;;
cgi)
source="sapi/cgi/php-cgi"
;;
fpm)
source="sapi/fpm/php-fpm"
;;
embed)
source="libs/libphp${PHP_MV}$(get_libname)"
;;
phpdbg)
source="sapi/phpdbg/phpdbg"
;;
*)
die "unhandled sapi in src_install"
;;
esac
if [[ "${source}" == *"$(get_libname)" ]]; then
dolib.so "${source}"
else
dobin "${source}"
local name="$(basename ${source})"
dosym "..${dest#/usr}/bin/${name}" "/usr/bin/${name}${SLOT}"
fi
fi
php_install_ini "${sapi}"
# construct correct SAPI string for php-config
# thanks to ferringb for the bash voodoo
if [[ "${sapi}" == "apache2" ]]; then
sapi_list="${sapi_list:+${sapi_list} }apache2handler"
else
sapi_list="${sapi_list:+${sapi_list} }${sapi}"
fi
fi
done
# Installing opcache module
if use opcache ; then
into "${PHP_DESTDIR#${EPREFIX}}"
dolib.so "modules/opcache$(get_libname)"
fi
# Install env.d files
newenvd "${FILESDIR}/20php5-envd" "20php${SLOT}"
sed -e "s|/lib/|/$(get_libdir)/|g" -i "${ED}/etc/env.d/20php${SLOT}" || die
sed -e "s|php5|php${SLOT}|g" -i "${ED}/etc/env.d/20php${SLOT}" || die
# set php-config variable correctly (bug #278439)
sed -e "s:^\(php_sapis=\)\".*\"$:\1\"${sapi_list}\":" -i \
"${ED}/usr/$(get_libdir)/php${SLOT}/bin/php-config" || die
if use fpm ; then
if use systemd; then
systemd_newunit "${FILESDIR}/php-fpm_at.service" \
"php-fpm@${SLOT}.service"
else
systemd_newunit "${FILESDIR}/php-fpm_at-simple.service" \
"php-fpm@${SLOT}.service"
fi
fi
}
src_test() {
echo ">>> Test phase [test]: ${CATEGORY}/${PF}"
PHP_BIN="${WORKDIR}/sapis-build/cli/sapi/cli/php"
if [[ ! -x "${PHP_BIN}" ]] ; then
ewarn "Test phase requires USE=cli, skipping"
return
else
export TEST_PHP_EXECUTABLE="${PHP_BIN}"
fi
if [[ -x "${WORKDIR}/sapis-build/cgi/sapi/cgi/php-cgi" ]] ; then
export TEST_PHP_CGI_EXECUTABLE="${WORKDIR}/sapis-build/cgi/sapi/cgi/php-cgi"
fi
if [[ -x "${WORKDIR}/sapis-build/phpdbg/sapi/phpdbg/phpdbg" ]] ; then
export TEST_PHPDBG_EXECUTABLE="${WORKDIR}/sapis-build/phpdbg/sapi/phpdbg/phpdbg"
fi
REPORT_EXIT_STATUS=1 "${TEST_PHP_EXECUTABLE}" -n -d \
"session.save_path=${T}" \
"${WORKDIR}/sapis-build/cli/run-tests.php" -n -q -d \
"session.save_path=${T}"
for name in ${EXPECTED_TEST_FAILURES}; do
mv "${name}.out" "${name}.out.orig" 2>/dev/null || die
done
local failed="$(find -name '*.out')"
if [[ ${failed} != "" ]] ; then
ewarn "The following test cases failed unexpectedly:"
for name in ${failed}; do
ewarn " ${name/.out/}"
done
else
einfo "No unexpected test failures, all fine"
fi
if [[ ${PHP_SHOW_UNEXPECTED_TEST_PASS} == "1" ]] ; then
local passed=""
for name in ${EXPECTED_TEST_FAILURES}; do
[[ -f "${name}.diff" ]] && continue
passed="${passed} ${name}"
done
if [[ ${passed} != "" ]] ; then
einfo "The following test cases passed unexpectedly:"
for name in ${passed}; do
ewarn " ${passed}"
done
else
einfo "None of the known-to-fail tests passed, all fine"
fi
fi
}
pkg_postinst() {
# Output some general info to the user
if use apache2 ; then
elog
elog "To enable PHP in apache, you will need to add \"-D PHP\" to"
elog "your apache2 command. OpenRC users can append that string to"
elog "APACHE2_OPTS in /etc/conf.d/apache2."
elog
elog "The apache module configuration file 70_mod_php.conf is"
elog "provided (and maintained) by eselect-php."
elog
fi
# Create the symlinks for php
local m
for m in ${SAPIS}; do
[[ ${m} == 'embed' ]] && continue;
if use $m ; then
local ci=$(eselect php show $m)
if [[ -z $ci ]]; then
eselect php set $m php${SLOT} || die
einfo "Switched ${m} to use php:${SLOT}"
einfo
elif [[ $ci != "php${SLOT}" ]] ; then
elog "To switch $m to use php:${SLOT}, run"
elog " eselect php set $m php${SLOT}"
elog
fi
fi
done
# Remove dead symlinks for SAPIs that were just disabled. For
# example, if the user has the cgi SAPI enabled, then he has an
# eselect-php symlink for it. If he later reinstalls PHP with
# USE="-cgi", that symlink will break. This call to eselect is
# supposed to remove that dead link per bug 572436.
eselect php cleanup || die
if ! has "php${SLOT/./-}" ${PHP_TARGETS}; then
elog "To build extensions for this version of PHP, you will need to"
elog "add php${SLOT/./-} to your PHP_TARGETS USE_EXPAND variable."
elog
fi
# Warn about the removal of PHP_INI_VERSION if the user has it set.
if [[ -n "${PHP_INI_VERSION}" ]]; then
ewarn 'The PHP_INI_VERSION variable has been phased out. You may'
ewarn 'remove it from your configuration at your convenience. See'
ewarn
ewarn ' https://bugs.gentoo.org/611214'
ewarn
ewarn 'for more information.'
fi
elog "For details on how version slotting works, please see"
elog "the wiki:"
elog
elog " https://wiki.gentoo.org/wiki/PHP"
elog
}
pkg_postrm() {
# This serves two purposes. First, if we have just removed the last
# installed version of PHP, then this will remove any dead symlinks
# belonging to eselect-php. Second, if a user upgrades slots from
# (say) 5.6 to 7.0 and depcleans the old slot, then this will update
# his existing symlinks to point to the new 7.0 installation. The
# latter is bug 432962.
#
# Note: the eselect-php package may not be installed at this point,
# so we can't die() if this command fails.
eselect php cleanup
}

@ -0,0 +1,751 @@
# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="7"
WANT_AUTOMAKE="none"
inherit flag-o-matic systemd autotools
MY_PV=${PV/_rc/rc}
DESCRIPTION="The PHP language runtime engine"
HOMEPAGE="https://www.php.net/"
SRC_URI="https://www.php.net/distributions/${P}.tar.xz"
LICENSE="PHP-3.01
BSD
Zend-2.0
bcmath? ( LGPL-2.1+ )
fpm? ( BSD-2 )
gd? ( gd )
unicode? ( BSD-2 LGPL-2.1 )"
SLOT="$(ver_cut 1-2)"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos"
S="${WORKDIR}/${PN}-${MY_PV}"
# We can build the following SAPIs in the given order
SAPIS="embed cli cgi fpm apache2 phpdbg"
# SAPIs and SAPI-specific USE flags (cli SAPI is default on):
IUSE="${IUSE}
${SAPIS/cli/+cli}
threads"
IUSE="${IUSE} acl argon2 bcmath berkdb bzip2 calendar cdb cjk
coverage +ctype curl debug
enchant exif ffi +fileinfo +filter firebird
+flatfile ftp gd gdbm gmp +iconv imap inifile
intl iodbc ipv6 +jit kerberos ldap ldap-sasl libedit libressl lmdb
mhash mssql mysql mysqli nls
oci8-instant-client odbc +opcache pcntl pdo +phar +posix postgres qdbm
readline selinux +session session-mm sharedmem
+simplexml snmp soap sockets sodium spell sqlite ssl
sysvipc systemd test tidy +tokenizer tokyocabinet truetype unicode webp
+xml xmlreader xmlwriter xpm xslt zip zlib"
# Without USE=readline or libedit, the interactive "php -a" CLI will hang.
# The Oracle instant client provides its own incompatible ldap library.
REQUIRED_USE="
|| ( cli cgi fpm apache2 embed phpdbg )
cli? ( ^^ ( readline libedit ) )
!cli? ( ?? ( readline libedit ) )
truetype? ( gd zlib )
webp? ( gd zlib )
cjk? ( gd zlib )
exif? ( gd zlib )
xpm? ( gd zlib )
gd? ( zlib )
simplexml? ( xml )
soap? ( xml )
xmlreader? ( xml )
xmlwriter? ( xml )
xslt? ( xml )
ldap-sasl? ( ldap )
oci8-instant-client? ( !ldap )
qdbm? ( !gdbm )
session-mm? ( session !threads )
mysql? ( || ( mysqli pdo ) )
firebird? ( pdo )
mssql? ( pdo )
"
RESTRICT="!test? ( test )"
# The supported (that is, autodetected) versions of BDB are listed in
# the ./configure script. Other versions *work*, but we need to stick to
# the ones that can be detected to avoid a repeat of bug #564824.
COMMON_DEPEND="
>=app-eselect/eselect-php-0.9.7[apache2?,fpm?]
>=dev-libs/libpcre2-10.30[jit?,unicode]
fpm? ( acl? ( sys-apps/acl ) )
apache2? ( www-servers/apache[apache2_modules_unixd(+),threads=] )
argon2? ( app-crypt/argon2:= )
berkdb? ( || ( sys-libs/db:5.3
sys-libs/db:5.1
sys-libs/db:4.8
sys-libs/db:4.7
sys-libs/db:4.6
sys-libs/db:4.5 ) )
bzip2? ( app-arch/bzip2:0= )
cdb? ( || ( dev-db/cdb dev-db/tinycdb ) )
coverage? ( dev-util/lcov )
curl? ( >=net-misc/curl-7.29.0 )
enchant? ( app-text/enchant:2 )
ffi? ( >=dev-libs/libffi-3.0.11 )
firebird? ( dev-db/firebird )
gd? ( >=virtual/jpeg-0-r3:0 media-libs/libpng:0= )
gdbm? ( >=sys-libs/gdbm-1.8.0:0= )
gmp? ( dev-libs/gmp:0= )
iconv? ( virtual/libiconv )
imap? ( >=virtual/imap-c-client-2[kerberos=,ssl=] )
intl? ( dev-libs/icu:= )
kerberos? ( virtual/krb5 )
ldap? ( >=net-nds/openldap-1.2.11 )
ldap-sasl? ( dev-libs/cyrus-sasl )
libedit? ( dev-libs/libedit )
lmdb? ( dev-db/lmdb:= )
mssql? ( dev-db/freetds[mssql] )
nls? ( sys-devel/gettext )
oci8-instant-client? ( dev-db/oracle-instantclient[sdk] )
odbc? ( iodbc? ( dev-db/libiodbc ) !iodbc? ( >=dev-db/unixODBC-1.8.13 ) )
postgres? ( >=dev-db/postgresql-9.1:* )
qdbm? ( dev-db/qdbm )
readline? ( sys-libs/readline:0= )
session-mm? ( dev-libs/mm )
snmp? ( >=net-analyzer/net-snmp-5.2 )
sodium? ( dev-libs/libsodium:= )
spell? ( >=app-text/aspell-0.50 )
sqlite? ( >=dev-db/sqlite-3.7.6.3 )
ssl? (
!libressl? ( >=dev-libs/openssl-1.0.1:0= )
libressl? ( dev-libs/libressl:0= )
)
tidy? ( || ( app-text/tidy-html5 app-text/htmltidy ) )
tokyocabinet? ( dev-db/tokyocabinet )
truetype? ( =media-libs/freetype-2* )
unicode? ( dev-libs/oniguruma:= )
webp? ( media-libs/libwebp:0= )
xml? ( >=dev-libs/libxml2-2.9.0 )
xpm? ( x11-libs/libXpm )
xslt? ( dev-libs/libxslt )
zip? ( >=dev-libs/libzip-1.2.0:= )
zlib? ( >=sys-libs/zlib-1.2.0.4:0= )
"
RDEPEND="${COMMON_DEPEND}
virtual/mta
fpm? (
selinux? ( sec-policy/selinux-phpfpm )
systemd? ( sys-apps/systemd ) )"
# Bison isn't actually needed when building from a release tarball
# However, the configure script will warn if it's absent or if you
# have an incompatible version installed. See bug 593278.
DEPEND="${COMMON_DEPEND}
app-arch/xz-utils
>=sys-devel/bison-3.0.1"
BDEPEND="virtual/pkgconfig"
PHP_MV="$(ver_cut 1)"
PATCHES=(
"${FILESDIR}/php-iodbc-header-location.patch"
"${FILESDIR}/php80-firebird-warnings.patch"
)
php_install_ini() {
local phpsapi="${1}"
# work out where we are installing the ini file
php_set_ini_dir "${phpsapi}"
# Always install the production INI file, bug 611214.
local phpinisrc="php.ini-production-${phpsapi}"
cp php.ini-production "${phpinisrc}" || die
# default to /tmp for save_path, bug #282768
sed -e 's|^;session.save_path .*$|session.save_path = "'"${EPREFIX}"'/tmp"|g' -i "${phpinisrc}" || die
# Set the extension dir
sed -e "s|^extension_dir .*$|extension_dir = ${extension_dir}|g" \
-i "${phpinisrc}" || die
# Set the include path to point to where we want to find PEAR packages
sed -e 's|^;include_path = ".:/php/includes".*|include_path = ".:'"${EPREFIX}"'/usr/share/php'${PHP_MV}':'"${EPREFIX}"'/usr/share/php"|' -i "${phpinisrc}" || die
insinto "${PHP_INI_DIR#${EPREFIX}}"
newins "${phpinisrc}" php.ini
elog "Installing php.ini for ${phpsapi} into ${PHP_INI_DIR#${EPREFIX}}"
elog
dodir "${PHP_EXT_INI_DIR#${EPREFIX}}"
dodir "${PHP_EXT_INI_DIR_ACTIVE#${EPREFIX}}"
if use opcache; then
elog "Adding opcache to $PHP_EXT_INI_DIR"
echo "zend_extension=${PHP_DESTDIR}/$(get_libdir)/opcache.so" >> \
"${D}/${PHP_EXT_INI_DIR}"/opcache.ini
dosym "../ext/opcache.ini" \
"${PHP_EXT_INI_DIR_ACTIVE#${EPREFIX}}/opcache.ini"
fi
# SAPI-specific handling
if [[ "${sapi}" == "fpm" ]] ; then
einfo "Installing FPM config files php-fpm.conf and www.conf"
insinto "${PHP_INI_DIR#${EPREFIX}}"
doins sapi/fpm/php-fpm.conf
insinto "${PHP_INI_DIR#${EPREFIX}}/fpm.d"
doins sapi/fpm/www.conf
fi
dodoc php.ini-{development,production}
}
php_set_ini_dir() {
PHP_INI_DIR="${EPREFIX}/etc/php/${1}-php${SLOT}"
PHP_EXT_INI_DIR="${PHP_INI_DIR}/ext"
PHP_EXT_INI_DIR_ACTIVE="${PHP_INI_DIR}/ext-active"
}
src_prepare() {
default
# In php-7.x, the FPM pool configuration files have been split off
# of the main config. By default the pool config files go in
# e.g. /etc/php-fpm.d, which isn't slotted. So here we move the
# include directory to a subdirectory "fpm.d" of $PHP_INI_DIR. Later
# we'll install the pool configuration file "www.conf" there.
php_set_ini_dir fpm
sed -i "s~^include=.*$~include=${PHP_INI_DIR}/fpm.d/*.conf~" \
sapi/fpm/php-fpm.conf.in \
|| die 'failed to move the include directory in php-fpm.conf'
# Emulate buildconf to support cross-compilation
rm -fr aclocal.m4 autom4te.cache config.cache \
configure main/php_config.h.in || die
eautoconf --force
eautoheader
}
src_configure() {
addpredict /usr/share/snmp/mibs/.index #nowarn
addpredict /var/lib/net-snmp/mib_indexes #nowarn
PHP_DESTDIR="${EPREFIX}/usr/$(get_libdir)/php${SLOT}"
# The php-fpm config file wants localstatedir to be ${EPREFIX}/var
# and not the Gentoo default ${EPREFIX}/var/lib. See bug 572002.
local our_conf=(
--prefix="${PHP_DESTDIR}"
--mandir="${PHP_DESTDIR}/man"
--infodir="${PHP_DESTDIR}/info"
--libdir="${PHP_DESTDIR}/lib"
--with-libdir="$(get_libdir)"
--localstatedir="${EPREFIX}/var"
--without-pear
$(use_enable threads zts)
)
our_conf+=(
$(use_with argon2 password-argon2 "${EPREFIX}/usr")
$(use_enable bcmath)
$(use_with bzip2 bz2 "${EPREFIX}/usr")
$(use_enable calendar)
$(use_enable coverage gcov)
$(use_enable ctype)
$(use_with curl)
$(use_enable xml dom)
$(use_with enchant)
$(use_enable exif)
$(use_with ffi)
$(use_enable fileinfo)
$(use_enable filter)
$(use_enable ftp)
$(use_with nls gettext "${EPREFIX}/usr")
$(use_with gmp gmp "${EPREFIX}/usr")
$(use_with mhash mhash "${EPREFIX}/usr")
$(use_with iconv iconv \
$(use elibc_glibc || use elibc_musl || use elibc_FreeBSD || echo "${EPREFIX}/usr"))
$(use_enable intl)
$(use_enable ipv6)
$(use_with kerberos)
$(use_with xml libxml)
$(use_enable unicode mbstring)
$(use_with ssl openssl)
$(use_enable pcntl)
$(use_enable phar)
$(use_enable pdo)
$(use_enable opcache)
$(use_with postgres pgsql "${EPREFIX}/usr")
$(use_enable posix)
$(use_with spell pspell "${EPREFIX}/usr")
$(use_enable simplexml)
$(use_enable sharedmem shmop)
$(use_with snmp snmp "${EPREFIX}/usr")
$(use_enable soap)
$(use_enable sockets)
$(use_with sodium)
$(use_with sqlite sqlite3)
$(use_enable sysvipc sysvmsg)
$(use_enable sysvipc sysvsem)
$(use_enable sysvipc sysvshm)
$(use_with tidy tidy "${EPREFIX}/usr")
$(use_enable tokenizer)
$(use_enable xml)
$(use_enable xmlreader)
$(use_enable xmlwriter)
$(use_with xslt xsl)
$(use_with zip)
$(use_with zlib zlib "${EPREFIX}/usr")
$(use_enable debug)
)
# DBA support
if use cdb || use berkdb || use flatfile || use gdbm || use inifile \
|| use qdbm || use lmdb || use tokyocabinet ; then
our_conf+=( "--enable-dba" )
fi
# DBA drivers support
our_conf+=(
$(use_with cdb)
$(use_with berkdb db4 "${EPREFIX}/usr")
$(use_enable flatfile)
$(use_with gdbm gdbm "${EPREFIX}/usr")
$(use_enable inifile)
$(use_with qdbm qdbm "${EPREFIX}/usr")
$(use_with tokyocabinet tcadb "${EPREFIX}/usr")
$(use_with lmdb lmdb "${EPREFIX}/usr")
)
# Support for the GD graphics library
our_conf+=(
$(use_with truetype freetype)
$(use_enable cjk gd-jis-conv)
$(use_with gd jpeg)
$(use_with xpm)
$(use_with webp)
)
# enable gd last, so configure can pick up the previous settings
our_conf+=( $(use_enable gd) )
# IMAP support
if use imap ; then
our_conf+=(
$(use_with imap imap "${EPREFIX}/usr")
$(use_with ssl imap-ssl "${EPREFIX}/usr")
)
fi
# LDAP support
if use ldap ; then
our_conf+=(
$(use_with ldap ldap "${EPREFIX}/usr")
$(use_with ldap-sasl)
)
fi
# MySQL support
local mysqllib="mysqlnd"
local mysqlilib="mysqlnd"
our_conf+=( $(use_with mysqli mysqli "${mysqlilib}") )
local mysqlsock="${EPREFIX}/var/run/mysqld/mysqld.sock"
if use mysql || use mysqli ; then
our_conf+=( $(use_with mysql mysql-sock "${mysqlsock}") )
fi
# ODBC support
if use odbc && use iodbc ; then
our_conf+=(
--without-unixODBC
--with-iodbc
$(use_with pdo pdo-odbc "iODBC,${EPREFIX}/usr")
)
elif use odbc ; then
our_conf+=(
--with-unixODBC="${EPREFIX}/usr"
--without-iodbc
$(use_with pdo pdo-odbc "unixODBC,${EPREFIX}/usr")
)
else
our_conf+=(
--without-unixODBC
--without-iodbc
--without-pdo-odbc
)
fi
# Oracle support
our_conf+=( $(use_with oci8-instant-client oci8) )
# PDO support
if use pdo ; then
our_conf+=(
$(use_with mssql pdo-dblib "${EPREFIX}/usr")
$(use_with mysql pdo-mysql "${mysqllib}")
$(use_with postgres pdo-pgsql)
$(use_with sqlite pdo-sqlite)
$(use_with firebird pdo-firebird "${EPREFIX}/usr")
$(use_with oci8-instant-client pdo-oci)
)
fi
# readline/libedit support
our_conf+=(
$(use_with readline readline "${EPREFIX}/usr")
$(use_with libedit)
)
# Session support
if use session ; then
our_conf+=( $(use_with session-mm mm "${EPREFIX}/usr") )
else
our_conf+=( $(use_enable session) )
fi
# Use pic for shared modules such as apache2's mod_php
our_conf+=( --with-pic )
# we use the system copy of pcre
# --with-external-pcre affects ext/pcre
our_conf+=(
--with-external-pcre
$(use_with jit pcre-jit)
)
# Catch CFLAGS problems
# Fixes bug #14067.
# Changed order to run it in reverse for bug #32022 and #12021.
replace-cpu-flags "k6*" "i586"
# Cache the ./configure test results between SAPIs.
our_conf+=( --cache-file="${T}/config.cache" )
# Support user-passed configuration parameters
our_conf+=( ${EXTRA_ECONF:-} )
# Support the Apache2 extras, they must be set globally for all
# SAPIs to work correctly, especially for external PHP extensions
local one_sapi
local sapi
mkdir -p "${WORKDIR}/sapis-build" || die
for one_sapi in $SAPIS ; do
use "${one_sapi}" || continue
php_set_ini_dir "${one_sapi}"
# The BUILD_DIR variable is used to determine where to output
# the files that autotools creates. This was all originally
# based on the autotools-utils eclass.
BUILD_DIR="${WORKDIR}/sapis-build/${one_sapi}"
cp -a "${S}" "${BUILD_DIR}" || die
cd "${BUILD_DIR}" || die
local sapi_conf=(
--with-config-file-path="${PHP_INI_DIR}"
--with-config-file-scan-dir="${PHP_EXT_INI_DIR_ACTIVE}"
)
for sapi in $SAPIS ; do
case "$sapi" in
cli|cgi|embed|fpm|phpdbg)
if [[ "${one_sapi}" == "${sapi}" ]] ; then
sapi_conf+=( "--enable-${sapi}" )
if [[ "fpm" == "${sapi}" ]] ; then
sapi_conf+=(
$(use_with acl fpm-acl)
$(use_with systemd fpm-systemd)
)
fi
else
sapi_conf+=( "--disable-${sapi}" )
fi
;;
apache2)
if [[ "${one_sapi}" == "${sapi}" ]] ; then
sapi_conf+=( --with-apxs2="${EPREFIX}/usr/bin/apxs" )
else
sapi_conf+=( --without-apxs2 )
fi
;;
esac
done
# Construct the $myeconfargs array by concatenating $our_conf
# (the common args) and $sapi_conf (the SAPI-specific args).
local myeconfargs=( "${our_conf[@]}" )
myeconfargs+=( "${sapi_conf[@]}" )
pushd "${BUILD_DIR}" > /dev/null || die
econf "${myeconfargs[@]}"
popd > /dev/null || die
done
}
src_compile() {
# snmp seems to run during src_compile, too (bug #324739)
addpredict /usr/share/snmp/mibs/.index #nowarn
addpredict /var/lib/net-snmp/mib_indexes #nowarn
local sapi
for sapi in ${SAPIS} ; do
if use "${sapi}"; then
cd "${WORKDIR}/sapis-build/$sapi" || \
die "Failed to change dir to ${WORKDIR}/sapis-build/$1"
emake
fi
done
}
src_install() {
# see bug #324739 for what happens when we don't have that
addpredict /usr/share/snmp/mibs/.index #nowarn
# grab the first SAPI that got built and install common files from there
local first_sapi="", sapi=""
for sapi in $SAPIS ; do
if use $sapi ; then
first_sapi=$sapi
break
fi
done
# Makefile forgets to create this before trying to write to it...
dodir "${PHP_DESTDIR#${EPREFIX}}/bin"
# Install php environment (without any sapis)
cd "${WORKDIR}/sapis-build/$first_sapi" || die
emake INSTALL_ROOT="${D}" \
install-build install-headers install-programs
local extension_dir="$("${ED}/${PHP_DESTDIR#${EPREFIX}}/bin/php-config" --extension-dir)"
# Create the directory where we'll put version-specific php scripts
keepdir "/usr/share/php${PHP_MV}"
local file=""
local sapi_list=""
for sapi in ${SAPIS}; do
if use "${sapi}" ; then
einfo "Installing SAPI: ${sapi}"
cd "${WORKDIR}/sapis-build/${sapi}" || die
if [[ "${sapi}" == "apache2" ]] ; then
# We're specifically not using emake install-sapi as libtool
# may cause unnecessary relink failures (see bug #351266)
insinto "${PHP_DESTDIR#${EPREFIX}}/apache2/"
newins ".libs/libphp$(get_libname)" \
"libphp${PHP_MV}$(get_libname)"
keepdir "/usr/$(get_libdir)/apache2/modules"
else
# needed each time, php_install_ini would reset it
local dest="${PHP_DESTDIR#${EPREFIX}}"
into "${dest}"
case "$sapi" in
cli)
source="sapi/cli/php"
# Install the "phar" archive utility.
if use phar ; then
emake INSTALL_ROOT="${D}" install-pharcmd
dosym "..${dest#/usr}/bin/phar" "/usr/bin/phar${SLOT}"
fi
;;
cgi)
source="sapi/cgi/php-cgi"
;;
fpm)
source="sapi/fpm/php-fpm"
;;
embed)
source="libs/libphp$(get_libname)"
;;
phpdbg)
source="sapi/phpdbg/phpdbg"
;;
*)
die "unhandled sapi in src_install"
;;
esac
if [[ "${source}" == *"$(get_libname)" ]]; then
dolib.so "${source}"
else
dobin "${source}"
local name="$(basename ${source})"
dosym "..${dest#/usr}/bin/${name}" "/usr/bin/${name}${SLOT}"
fi
fi
php_install_ini "${sapi}"
# construct correct SAPI string for php-config
# thanks to ferringb for the bash voodoo
if [[ "${sapi}" == "apache2" ]]; then
sapi_list="${sapi_list:+${sapi_list} }apache2handler"
else
sapi_list="${sapi_list:+${sapi_list} }${sapi}"
fi
fi
done
# Installing opcache module
if use opcache ; then
into "${PHP_DESTDIR#${EPREFIX}}"
dolib.so "modules/opcache$(get_libname)"
fi
# Install env.d files
newenvd "${FILESDIR}/20php5-envd" "20php${SLOT}"
sed -e "s|/lib/|/$(get_libdir)/|g" -i "${ED}/etc/env.d/20php${SLOT}" || die
sed -e "s|php5|php${SLOT}|g" -i "${ED}/etc/env.d/20php${SLOT}" || die
# set php-config variable correctly (bug #278439)
sed -e "s:^\(php_sapis=\)\".*\"$:\1\"${sapi_list}\":" -i \
"${ED}/usr/$(get_libdir)/php${SLOT}/bin/php-config" || die
if use fpm ; then
if use systemd; then
systemd_newunit "${FILESDIR}/php-fpm_at.service" \
"php-fpm@${SLOT}.service"
else
systemd_newunit "${FILESDIR}/php-fpm_at-simple.service" \
"php-fpm@${SLOT}.service"
fi
fi
}
src_test() {
echo ">>> Test phase [test]: ${CATEGORY}/${PF}"
PHP_BIN="${WORKDIR}/sapis-build/cli/sapi/cli/php"
if [[ ! -x "${PHP_BIN}" ]] ; then
ewarn "Test phase requires USE=cli, skipping"
return
else
export TEST_PHP_EXECUTABLE="${PHP_BIN}"
fi
if [[ -x "${WORKDIR}/sapis-build/cgi/sapi/cgi/php-cgi" ]] ; then
export TEST_PHP_CGI_EXECUTABLE="${WORKDIR}/sapis-build/cgi/sapi/cgi/php-cgi"
fi
if [[ -x "${WORKDIR}/sapis-build/phpdbg/sapi/phpdbg/phpdbg" ]] ; then
export TEST_PHPDBG_EXECUTABLE="${WORKDIR}/sapis-build/phpdbg/sapi/phpdbg/phpdbg"
fi
REPORT_EXIT_STATUS=1 "${TEST_PHP_EXECUTABLE}" -n -d \
"session.save_path=${T}" \
"${WORKDIR}/sapis-build/cli/run-tests.php" -n -q -d \
"session.save_path=${T}"
for name in ${EXPECTED_TEST_FAILURES}; do
mv "${name}.out" "${name}.out.orig" 2>/dev/null || die
done
local failed="$(find -name '*.out')"
if [[ ${failed} != "" ]] ; then
ewarn "The following test cases failed unexpectedly:"
for name in ${failed}; do
ewarn " ${name/.out/}"
done
else
einfo "No unexpected test failures, all fine"
fi
if [[ ${PHP_SHOW_UNEXPECTED_TEST_PASS} == "1" ]] ; then
local passed=""
for name in ${EXPECTED_TEST_FAILURES}; do
[[ -f "${name}.diff" ]] && continue
passed="${passed} ${name}"
done
if [[ ${passed} != "" ]] ; then
einfo "The following test cases passed unexpectedly:"
for name in ${passed}; do
ewarn " ${passed}"
done
else
einfo "None of the known-to-fail tests passed, all fine"
fi
fi
}
pkg_postinst() {
# Output some general info to the user
if use apache2 ; then
elog
elog "To enable PHP in apache, you will need to add \"-D PHP\" to"
elog "your apache2 command. OpenRC users can append that string to"
elog "APACHE2_OPTS in /etc/conf.d/apache2."
elog
elog "The apache module configuration file 70_mod_php.conf is"
elog "provided (and maintained) by eselect-php."
elog
fi
# Create the symlinks for php
local m
for m in ${SAPIS}; do
[[ ${m} == 'embed' ]] && continue;
if use $m ; then
local ci=$(eselect php show $m)
if [[ -z $ci ]]; then
eselect php set $m php${SLOT} || die
einfo "Switched ${m} to use php:${SLOT}"
einfo
elif [[ $ci != "php${SLOT}" ]] ; then
elog "To switch $m to use php:${SLOT}, run"
elog " eselect php set $m php${SLOT}"
elog
fi
fi
done
# Remove dead symlinks for SAPIs that were just disabled. For
# example, if the user has the cgi SAPI enabled, then he has an
# eselect-php symlink for it. If he later reinstalls PHP with
# USE="-cgi", that symlink will break. This call to eselect is
# supposed to remove that dead link per bug 572436.
eselect php cleanup || die
if ! has "php${SLOT/./-}" ${PHP_TARGETS}; then
elog "To build extensions for this version of PHP, you will need to"
elog "add php${SLOT/./-} to your PHP_TARGETS USE_EXPAND variable."
elog
fi
# Warn about the removal of PHP_INI_VERSION if the user has it set.
if [[ -n "${PHP_INI_VERSION}" ]]; then
ewarn 'The PHP_INI_VERSION variable has been phased out. You may'
ewarn 'remove it from your configuration at your convenience. See'
ewarn
ewarn ' https://bugs.gentoo.org/611214'
ewarn
ewarn 'for more information.'
fi
elog "For details on how version slotting works, please see"
elog "the wiki:"
elog
elog " https://wiki.gentoo.org/wiki/PHP"
elog
}
pkg_postrm() {
# This serves two purposes. First, if we have just removed the last
# installed version of PHP, then this will remove any dead symlinks
# belonging to eselect-php. Second, if a user upgrades slots from
# (say) 5.6 to 7.0 and depcleans the old slot, then this will update
# his existing symlinks to point to the new 7.0 installation. The
# latter is bug 432962.
#
# Note: the eselect-php package may not be installed at this point,
# so we can't die() if this command fails.
eselect php cleanup
}

@ -23,7 +23,7 @@ S="${WORKDIR}/${MY_P}"
LICENSE="PSF-2"
SLOT="${PYVER}"
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~s390 sparc x86"
IUSE="-berkdb bluetooth build elibc_uclibc examples gdbm hardened ipv6 libressl +ncurses +readline +sqlite +ssl +threads tk +wide-unicode wininst +xml"
IUSE="-berkdb bluetooth build elibc_uclibc examples gdbm hardened ipv6 +ncurses +readline +sqlite +ssl +threads tk +wide-unicode wininst +xml"
# Do not add a dependency on dev-lang/python to this ebuild.
# If you need to apply a patch which requires python for bootstrapping, please
@ -50,10 +50,7 @@ RDEPEND="app-arch/bzip2:=
ncurses? ( >=sys-libs/ncurses-5.2:= )
readline? ( >=sys-libs/readline-4.1:= )
sqlite? ( >=dev-db/sqlite-3.3.8:3= )
ssl? (
!libressl? ( dev-libs/openssl:= )
libressl? ( dev-libs/libressl:= )
)
ssl? ( dev-libs/openssl:= )
tk? (
>=dev-lang/tcl-8.0:=
>=dev-lang/tk-8.0:=

@ -24,7 +24,7 @@ S="${WORKDIR}/${MY_P}"
LICENSE="PSF-2"
SLOT="${PYVER}"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
IUSE="bluetooth build examples gdbm hardened ipv6 libressl +ncurses +readline +sqlite +ssl test tk wininst +xml"
IUSE="bluetooth build examples gdbm hardened ipv6 +ncurses +readline +sqlite +ssl test tk wininst +xml"
RESTRICT="!test? ( test )"
# Do not add a dependency on dev-lang/python to this ebuild.
@ -43,10 +43,7 @@ RDEPEND="app-arch/bzip2:=
ncurses? ( >=sys-libs/ncurses-5.2:= )
readline? ( >=sys-libs/readline-4.1:= )
sqlite? ( >=dev-db/sqlite-3.3.8:3= )
ssl? (
!libressl? ( dev-libs/openssl:= )
libressl? ( dev-libs/libressl:= )
)
ssl? ( dev-libs/openssl:= )
tk? (
>=dev-lang/tcl-8.0:=
>=dev-lang/tk-8.0:=

@ -23,7 +23,7 @@ S="${WORKDIR}/${MY_P}"
LICENSE="PSF-2"
SLOT="${PYVER}/${PYVER}m"
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~s390 sparc x86"
IUSE="bluetooth build examples gdbm hardened ipv6 libressl +ncurses +readline +sqlite +ssl test +threads tk wininst +xml"
IUSE="bluetooth build examples gdbm hardened ipv6 +ncurses +readline +sqlite +ssl test +threads tk wininst +xml"
RESTRICT="!test? ( test )"
# Do not add a dependency on dev-lang/python to this ebuild.
@ -41,10 +41,7 @@ RDEPEND="app-arch/bzip2:=
ncurses? ( >=sys-libs/ncurses-5.2:= )
readline? ( >=sys-libs/readline-4.1:= )
sqlite? ( >=dev-db/sqlite-3.3.8:3= )
ssl? (
!libressl? ( dev-libs/openssl:= )
libressl? ( dev-libs/libressl:= )
)
ssl? ( dev-libs/openssl:= )
tk? (
>=dev-lang/tcl-8.0:=
>=dev-lang/tk-8.0:=

@ -23,7 +23,7 @@ S="${WORKDIR}/${MY_P}"
LICENSE="PSF-2"
SLOT="${PYVER}/${PYVER}m"
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
IUSE="bluetooth build examples gdbm hardened ipv6 libressl +ncurses +readline +sqlite +ssl test tk wininst +xml"
IUSE="bluetooth build examples gdbm hardened ipv6 +ncurses +readline +sqlite +ssl test tk wininst +xml"
RESTRICT="!test? ( test )"
# Do not add a dependency on dev-lang/python to this ebuild.
@ -42,10 +42,7 @@ RDEPEND="app-arch/bzip2:=
ncurses? ( >=sys-libs/ncurses-5.2:= )
readline? ( >=sys-libs/readline-4.1:= )
sqlite? ( >=dev-db/sqlite-3.3.8:3= )
ssl? (
!libressl? ( dev-libs/openssl:= )
libressl? ( dev-libs/libressl:= )
)
ssl? ( dev-libs/openssl:= )
tk? (
>=dev-lang/tcl-8.0:=
>=dev-lang/tk-8.0:=

@ -24,7 +24,7 @@ S="${WORKDIR}/${MY_P}"
LICENSE="PSF-2"
SLOT="${PYVER}"
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
IUSE="bluetooth build examples gdbm hardened ipv6 libressl +ncurses +readline +sqlite +ssl test tk wininst +xml"
IUSE="bluetooth build examples gdbm hardened ipv6 +ncurses +readline +sqlite +ssl test tk wininst +xml"
RESTRICT="!test? ( test )"
# Do not add a dependency on dev-lang/python to this ebuild.
@ -43,10 +43,7 @@ RDEPEND="app-arch/bzip2:=
ncurses? ( >=sys-libs/ncurses-5.2:= )
readline? ( >=sys-libs/readline-4.1:= )
sqlite? ( >=dev-db/sqlite-3.3.8:3= )
ssl? (
!libressl? ( dev-libs/openssl:= )
libressl? ( dev-libs/libressl:= )
)
ssl? ( dev-libs/openssl:= )
tk? (
>=dev-lang/tcl-8.0:=
>=dev-lang/tk-8.0:=

@ -24,7 +24,7 @@ S="${WORKDIR}/${MY_P}"
LICENSE="PSF-2"
SLOT="${PYVER}"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
IUSE="bluetooth build examples gdbm hardened ipv6 libressl +ncurses +readline +sqlite +ssl test tk wininst +xml"
IUSE="bluetooth build examples gdbm hardened ipv6 +ncurses +readline +sqlite +ssl test tk wininst +xml"
RESTRICT="!test? ( test )"
# Do not add a dependency on dev-lang/python to this ebuild.
@ -43,10 +43,7 @@ RDEPEND="app-arch/bzip2:=
ncurses? ( >=sys-libs/ncurses-5.2:= )
readline? ( >=sys-libs/readline-4.1:= )
sqlite? ( >=dev-db/sqlite-3.3.8:3= )
ssl? (
!libressl? ( dev-libs/openssl:= )
libressl? ( dev-libs/libressl:= )
)
ssl? ( dev-libs/openssl:= )
tk? (
>=dev-lang/tcl-8.0:=
>=dev-lang/tk-8.0:=

@ -24,7 +24,7 @@ S="${WORKDIR}/${MY_P}"
LICENSE="PSF-2"
SLOT="${PYVER}"
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
IUSE="bluetooth build examples gdbm hardened ipv6 libressl +ncurses +readline +sqlite +ssl test tk wininst +xml"
IUSE="bluetooth build examples gdbm hardened ipv6 +ncurses +readline +sqlite +ssl test tk wininst +xml"
RESTRICT="!test? ( test )"
# Do not add a dependency on dev-lang/python to this ebuild.
@ -43,10 +43,7 @@ RDEPEND="app-arch/bzip2:=
ncurses? ( >=sys-libs/ncurses-5.2:= )
readline? ( >=sys-libs/readline-4.1:= )
sqlite? ( >=dev-db/sqlite-3.3.8:3= )
ssl? (
!libressl? ( dev-libs/openssl:= )
libressl? ( dev-libs/libressl:= )
)
ssl? ( dev-libs/openssl:= )
tk? (
>=dev-lang/tcl-8.0:=
>=dev-lang/tk-8.0:=

@ -24,7 +24,7 @@ S="${WORKDIR}/${MY_P}"
LICENSE="PSF-2"
SLOT="${PYVER}"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
IUSE="bluetooth build examples gdbm hardened ipv6 libressl +ncurses +readline +sqlite +ssl test tk wininst +xml"
IUSE="bluetooth build examples gdbm hardened ipv6 +ncurses +readline +sqlite +ssl test tk wininst +xml"
RESTRICT="!test? ( test )"
# Do not add a dependency on dev-lang/python to this ebuild.
@ -43,10 +43,7 @@ RDEPEND="app-arch/bzip2:=
ncurses? ( >=sys-libs/ncurses-5.2:= )
readline? ( >=sys-libs/readline-4.1:= )
sqlite? ( >=dev-db/sqlite-3.3.8:3= )
ssl? (
!libressl? ( dev-libs/openssl:= )
libressl? ( dev-libs/libressl:= )
)
ssl? ( dev-libs/openssl:= )
tk? (
>=dev-lang/tcl-8.0:=
>=dev-lang/tk-8.0:=

Binary file not shown.

@ -1 +1,2 @@
DIST dqlite-1.6.0.tar.gz 155087 BLAKE2B 97a49f78f1b6af5ff5abfe6c5e1e3eec67cc1da4bd9c49b785e6fff60e5fd39fa1f479269ec098935ebb7fbbca6346859b54bd0c9b8f428557e2768da938da0c SHA512 07abf0d3247afd0a8f4ea053e10fbf2e53f69dc1101a7e54e064282eee3590ef5925e9b794a7cfd891247747d34b68340946d322d582ce49282b6f56804e8578
DIST dqlite-1.7.0.tar.gz 157454 BLAKE2B 3eeaaf5bbadfc09803e70d38fcd3ab23c212dc2700ad8ecdde720932b0ad2e32016503eaa8a738139a178bb926a7818497629699ec68eec8c2111f377b40b4a3 SHA512 bf94568b1b52b0d94ddf78a3f975e277a5baa0f553c5c1d175b7e58db3d44478a1b3f8ef962259175b29d774b2eb6ed6765874dd0d461126b3268abbdd57949e

@ -0,0 +1,42 @@
# Copyright 2020-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit autotools
DESCRIPTION="Embeddable, replicated and fault tolerant SQL engine"
HOMEPAGE="https://dqlite.io/ https://github.com/canonical/dqlite"
SRC_URI="https://github.com/canonical/dqlite/archive/v${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="LGPL-3-with-linking-exception"
SLOT="0"
KEYWORDS="~amd64 ~arm64"
IUSE="test"
RESTRICT="!test? ( test )"
RDEPEND="dev-db/sqlite:3
dev-libs/libuv
dev-libs/raft"
DEPEND="${RDEPEND}
test? ( dev-libs/raft[test] )"
src_prepare() {
default
eautoreconf
}
src_configure() {
local myeconfargs=(
--disable-debug
--disable-sanitize
--disable-static
)
econf "${myeconfargs[@]}"
}
src_install() {
default
find "${ED}" -name '*.la' -delete || die
}

@ -3,7 +3,7 @@
EAPI=7
inherit multilib-minimal
inherit multilib-minimal toolchain-funcs
DESCRIPTION="A free implementation of the unicode bidirectional algorithm"
HOMEPAGE="https://fribidi.org/"
@ -21,6 +21,12 @@ BDEPEND="
DOCS=( AUTHORS NEWS ChangeLog THANKS ) # README points at README.md which wasn't disted with EAPI-7
src_prepare() {
default
export CC_FOR_BUILD="$(tc-getBUILD_CC)"
}
multilib_src_configure() {
local myeconfargs=(
--enable-shared

@ -1 +1,2 @@
DIST libinput-1.17.1.tar.xz 611492 BLAKE2B 274312240fccc49a45dedc3d41018bc952f25040217f388fd461aebabe796be106dd4f34cb2e40ce91fc75219c47fbd605c6facdc4d47893420e5df199a7edb7 SHA512 2e7baa198fed9c673d28453efb066f9371f2b575a844e41cde455c636bbe1cc68faae7129026944a502cd5d7bfcc72272066b9e3cda5c959f7b464483f9dd860
DIST libinput-1.17.2.tar.xz 611388 BLAKE2B a94ab1e3ef65f49a3043e5f84d68748c4800be1e2e0911b45be2a9cd6655311b2e6c2fcde64827f57e74318fc759d95e045125239305a2ae94175371c178c50a SHA512 b8953ad483648d5629d56c4dc226d4906693b15da5ba4027627a51ec35ea65b0603c09056b52ed2025df1f7a877669a5b7482c025e0b37003fc676563bd05263

@ -0,0 +1,88 @@
# Copyright 2014-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
PYTHON_COMPAT=( python3_{7,8,9} )
inherit meson python-any-r1 udev
DESCRIPTION="Library to handle input devices in Wayland"
HOMEPAGE="https://www.freedesktop.org/wiki/Software/libinput/ https://gitlab.freedesktop.org/libinput/libinput"
SRC_URI="https://www.freedesktop.org/software/${PN}/${P}.tar.xz"
LICENSE="MIT"
SLOT="0/10"
[[ "$(ver_cut 3)" -gt 900 ]] || \
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
IUSE="doc input_devices_wacom test"
RESTRICT="!test? ( test )"
BDEPEND="
virtual/pkgconfig
doc? (
$(python_gen_any_dep '
dev-python/commonmark[${PYTHON_USEDEP}]
dev-python/recommonmark[${PYTHON_USEDEP}]
dev-python/sphinx[${PYTHON_USEDEP}]
>=dev-python/sphinx_rtd_theme-0.2.4[${PYTHON_USEDEP}]
')
>=app-doc/doxygen-1.8.3
>=media-gfx/graphviz-2.38.0
)
"
# test? ( dev-util/valgrind )
RDEPEND="
input_devices_wacom? ( >=dev-libs/libwacom-0.20 )
>=dev-libs/libevdev-1.3
>=sys-libs/mtdev-1.1
virtual/libudev:=
virtual/udev
"
DEPEND="${RDEPEND}
test? ( >=dev-libs/check-0.9.10 )"
python_check_deps() {
has_version "dev-python/commonmark[${PYTHON_USEDEP}]" && \
has_version "dev-python/recommonmark[${PYTHON_USEDEP}]" && \
has_version "dev-python/sphinx[${PYTHON_USEDEP}]" && \
has_version ">=dev-python/sphinx_rtd_theme-0.2.4[${PYTHON_USEDEP}]"
}
pkg_setup() {
use doc && python-any-r1_pkg_setup
}
src_prepare() {
default
sed "s@, '-Werror'@@" -i meson.build || die #744250
}
src_configure() {
# gui can be built but will not be installed
local emesonargs=(
-Ddebug-gui=false
$(meson_use doc documentation)
$(meson_use input_devices_wacom libwacom)
$(meson_use test tests)
-Dudev-dir="${EPREFIX}$(get_udevdir)"
)
meson_src_configure
}
src_install() {
meson_src_install
if use doc ; then
docinto html
dodoc -r "${BUILD_DIR}"/Documentation/.
fi
}
pkg_postinst() {
pkgname="dev-python/python-libevdev"
if [[ -z "${REPLACING_VERSIONS}" ]] && ! has_version "${pkgname}" ; then
einfo "${pkgname} must be installed to use the"
einfo "libinput measure and libinput replay tools."
fi
udevadm hwdb --update --root="${ROOT}"
}

@ -26,7 +26,7 @@ fi
LICENSE="BSD"
SLOT="0"
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
IUSE="bzip2 +jit libedit pcre16 pcre32 +readline +recursion-limit static-libs unicode zlib"
IUSE="bzip2 +jit libedit +pcre16 pcre32 +readline +recursion-limit static-libs unicode zlib"
REQUIRED_USE="?? ( libedit readline )"
BDEPEND="

@ -26,7 +26,7 @@ fi
LICENSE="BSD"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
IUSE="bzip2 +jit libedit pcre16 pcre32 +readline +recursion-limit static-libs unicode zlib"
IUSE="bzip2 +jit libedit +pcre16 pcre32 +readline +recursion-limit static-libs unicode zlib"
REQUIRED_USE="?? ( libedit readline )"
BDEPEND="

@ -1,9 +1,9 @@
# Copyright 1999-2020 Gentoo Authors
# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
PYTHON_COMPAT=( python3_{7,8} )
PYTHON_COMPAT=( python3_{7..9} )
inherit meson python-single-r1 systemd udev

@ -1 +1,2 @@
DIST libxdg-basedir-1.2.0.tar.gz 30159 BLAKE2B cd9eacf6d32e0f27aa4a9092fb919f027fe77905cf8cad2f3d860d93f9784bbcf85336704fd9241d58769e48b2a8a7e4b4ed306ff32328f1ddc7cce7b014dc09 SHA512 8584405d45e0b57e570666b6eab6d99d70411d00f88965826c9ed0292372385668f190157a10ff536f3a5a59fd0031b332ecbb8a38ac64eda1b04a0603997406
DIST libxdg-basedir-1.2.3.tar.gz 30971 BLAKE2B 63e8197f33db1200573b03cb58e4760ebc9a58f132902f8290822d9235be27e22bc4b763150a526cce23be60d2d535cd8627259180edce4d889a077d4b0de20c SHA512 e672da0d9cd3c27c9113f6053b79127e615e5d84bde81305242f506e930869d8492304aac26a0296528d5a32530e4a743acecb6a25f58372ac597af284429f7c

@ -0,0 +1,47 @@
# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit autotools
DESCRIPTION="Small library to access XDG Base Directories Specification paths"
HOMEPAGE="https://github.com/devnev/libxdg-basedir"
SRC_URI="https://github.com/devnev/libxdg-basedir/archive/${P}.tar.gz"
S="${WORKDIR}/${PN}-${P}"
LICENSE="MIT"
SLOT="0"
KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86 ~amd64-linux ~x64-macos ~x86-solaris"
IUSE="doc"
BDEPEND="doc? ( app-doc/doxygen )"
src_prepare() {
default
eautoreconf
}
src_configure() {
econf \
--disable-static \
$(use_enable doc doxygen-html)
}
src_compile() {
emake
if use doc; then
emake doxygen-doc
fi
}
src_install() {
emake DESTDIR="${D}" install
use doc && local HTML_DOCS=( doc/html/. )
einstalldocs
find "${ED}" -type f -name '*.la' -delete || die
}

@ -1,8 +1,15 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<!-- maintainer-needed -->
<upstream>
<remote-id type="github">devnev/libxdg-basedir</remote-id>
</upstream>
<maintainer type="person" proxied="yes">
<email>gentoo@tastytea.de</email>
<name>Ronny (tastytea) Gutbrod</name>
</maintainer>
<maintainer type="project" proxied="proxy">
<email>proxy-maint@gentoo.org</email>
<name>Proxy Maintainers</name>
</maintainer>
<upstream>
<remote-id type="github">devnev/libxdg-basedir</remote-id>
</upstream>
</pkgmetadata>

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

Loading…
Cancel
Save