parent
1a7a2baab5
commit
7b03896c70
Binary file not shown.
Binary file not shown.
@ -0,0 +1,8 @@
|
||||
# Copyright 2020 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
inherit acct-group
|
||||
|
||||
ACCT_GROUP_ID=313
|
@ -1,8 +1,8 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
|
||||
<pkgmetadata>
|
||||
<maintainer type="project">
|
||||
<email>sci-chemistry@gentoo.org</email>
|
||||
<name>Gentoo Chemistry Project</name>
|
||||
<maintainer type="person">
|
||||
<email>zmedico@gentoo.org</email>
|
||||
<name>Zac Medico</name>
|
||||
</maintainer>
|
||||
</pkgmetadata>
|
@ -0,0 +1,8 @@
|
||||
# Copyright 2020 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
inherit acct-group
|
||||
|
||||
ACCT_GROUP_ID=439
|
@ -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>zlogene@gentoo.org</email>
|
||||
<name>Mikle Kolyada</name>
|
||||
</maintainer>
|
||||
</pkgmetadata>
|
@ -0,0 +1,12 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
|
||||
<pkgmetadata>
|
||||
<maintainer type="person">
|
||||
<email>gentoo@chuso.net</email>
|
||||
<name>Jesus Perez Rey</name>
|
||||
</maintainer>
|
||||
<maintainer type="project">
|
||||
<email>proxy-maint@gentoo.org</email>
|
||||
<name>Proxy Maintainers</name>
|
||||
</maintainer>
|
||||
</pkgmetadata>
|
@ -0,0 +1,9 @@
|
||||
# Copyright 1999-2020 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
inherit acct-group
|
||||
|
||||
DESCRIPTION="Group for mldonkey"
|
||||
ACCT_GROUP_ID=378
|
Binary file not shown.
@ -0,0 +1,10 @@
|
||||
# Copyright 2020 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
inherit acct-user
|
||||
|
||||
ACCT_USER_ID=313
|
||||
ACCT_USER_GROUPS=( flatpak )
|
||||
acct-user_add_deps
|
@ -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>zmedico@gentoo.org</email>
|
||||
<name>Zac Medico</name>
|
||||
</maintainer>
|
||||
</pkgmetadata>
|
@ -0,0 +1,16 @@
|
||||
# Copyright 2019-2020 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
inherit acct-user
|
||||
|
||||
DESCRIPTION="A user for ldap"
|
||||
ACCT_USER_ID=439
|
||||
ACCT_USER_GROUPS=( ldap )
|
||||
|
||||
acct-user_add_deps
|
||||
|
||||
pkg_setup(){
|
||||
ACCT_USER_HOME=/usr/$(get_libdir)/openldap
|
||||
}
|
@ -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>zlogene@gentoo.org</email>
|
||||
<name>Mikle Kolyada</name>
|
||||
</maintainer>
|
||||
</pkgmetadata>
|
@ -0,0 +1,12 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
|
||||
<pkgmetadata>
|
||||
<maintainer type="person">
|
||||
<email>gentoo@chuso.net</email>
|
||||
<name>Jesus Perez Rey</name>
|
||||
</maintainer>
|
||||
<maintainer type="project">
|
||||
<email>proxy-maint@gentoo.org</email>
|
||||
<name>Proxy Maintainers</name>
|
||||
</maintainer>
|
||||
</pkgmetadata>
|
@ -0,0 +1,12 @@
|
||||
# Copyright 1999-2020 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
inherit acct-user
|
||||
|
||||
DESCRIPTION="User for mldonkey"
|
||||
ACCT_USER_ID=378
|
||||
ACCT_USER_GROUPS=( p2p )
|
||||
|
||||
acct-user_add_deps
|
Binary file not shown.
Binary file not shown.
File diff suppressed because it is too large
Load Diff
@ -1,2 +1,3 @@
|
||||
DIST glance-20.0.0.tar.gz 1961501 BLAKE2B 81ecbf1dccb1b7cbc33481825cd1de65556e9950ea8fca71565380df27c5ca967b001f811bede483b8b0e05ddf01dcb39ef4474d29d10e530d8b3cd0218dae32 SHA512 37497c5705040f3f667e0352fb620731feac91a729d77e5049feea6f4fef73cc58ef84bc6c12e84773c5013aa24a06fff8d9a56f079c716357c84823fa5690b1
|
||||
DIST glance-20.0.1.tar.gz 1959665 BLAKE2B 8d51a9e46361b2b4a1fd1642e14a6fb8bd2bc4eade58279b90eb676f49d7ac649897faf837852cdac318eab87b6daa396008c5f98c2f5aac2e2425e975014eec SHA512 19ee3313f465ff0c010389d72050ec72a4ec4dcaa075b1b0db2c7e591a9f598d9a552cc7f89b1c2bed6b2b83883783ae306fff429177d7d728c7b0a70481233d
|
||||
DIST glance-21.0.0.tar.gz 2032938 BLAKE2B 9da6353d95768c8f241e8ea42def5a7a457d88ddf92c4f881649f196a57ef232ddabcf4f6816256fbd1fcb21b6e7b46811c3bf7c9b9c587fc902d008cbaf525d SHA512 83d49f96a82de0093fe3991f5138febc403964f5af1012de6e63395b82a368e08b2b7d142a889244c4261d1d019336e69050e9149d40b88e1c175f7a561e4f5d
|
||||
|
@ -0,0 +1,143 @@
|
||||
# Copyright 1999-2020 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
PYTHON_COMPAT=( python3_7 python3_8 )
|
||||
DISTUTILS_USE_SETUPTOOLS=rdepend
|
||||
inherit distutils-r1
|
||||
|
||||
DESCRIPTION="Services for discovering, registering, and retrieving VM images"
|
||||
HOMEPAGE="https://launchpad.net/glance"
|
||||
|
||||
if [[ ${PV} == *9999 ]];then
|
||||
inherit git-r3
|
||||
EGIT_REPO_URI="https://github.com/openstack/glance.git"
|
||||
EGIT_BRANCH="stable/victoria"
|
||||
else
|
||||
SRC_URI="https://tarballs.openstack.org/${PN}/${P}.tar.gz"
|
||||
KEYWORDS="~amd64 ~arm64 ~x86"
|
||||
fi
|
||||
|
||||
LICENSE="Apache-2.0"
|
||||
SLOT="0"
|
||||
IUSE="doc mysql postgres +sqlite +swift"
|
||||
REQUIRED_USE="|| ( mysql postgres sqlite )"
|
||||
|
||||
#note to self, wsgiref is a python builtin, no need to package it
|
||||
#>=dev-python/wsgiref-0.1.2[${PYTHON_USEDEP}]
|
||||
|
||||
DEPEND="
|
||||
>=dev-python/pbr-2.0.0[${PYTHON_USEDEP}]
|
||||
!~dev-python/pbr-2.1.0[${PYTHON_USEDEP}]
|
||||
"
|
||||
RDEPEND="
|
||||
>=dev-python/pbr-2.0.0[${PYTHON_USEDEP}]
|
||||
!~dev-python/pbr-2.1.0[${PYTHON_USEDEP}]
|
||||
>=dev-python/defusedxml-0.6.0[${PYTHON_USEDEP}]
|
||||
sqlite? (
|
||||
>=dev-python/sqlalchemy-1.0.10[sqlite,${PYTHON_USEDEP}]
|
||||
!~dev-python/sqlalchemy-1.1.5[sqlite,${PYTHON_USEDEP}]
|
||||
!~dev-python/sqlalchemy-1.1.6[sqlite,${PYTHON_USEDEP}]
|
||||
!~dev-python/sqlalchemy-1.1.7[sqlite,${PYTHON_USEDEP}]
|
||||
!~dev-python/sqlalchemy-1.1.8[sqlite,${PYTHON_USEDEP}]
|
||||
)
|
||||
mysql? (
|
||||
>=dev-python/pymysql-0.7.6[${PYTHON_USEDEP}]
|
||||
!~dev-python/pymysql-0.7.7[${PYTHON_USEDEP}]
|
||||
>=dev-python/sqlalchemy-1.0.10[${PYTHON_USEDEP}]
|
||||
!~dev-python/sqlalchemy-1.1.5[${PYTHON_USEDEP}]
|
||||
!~dev-python/sqlalchemy-1.1.6[${PYTHON_USEDEP}]
|
||||
!~dev-python/sqlalchemy-1.1.7[${PYTHON_USEDEP}]
|
||||
!~dev-python/sqlalchemy-1.1.8[${PYTHON_USEDEP}]
|
||||
)
|
||||
postgres? (
|
||||
>=dev-python/psycopg-2.5.0[${PYTHON_USEDEP}]
|
||||
>=dev-python/sqlalchemy-1.0.10[${PYTHON_USEDEP}]
|
||||
!~dev-python/sqlalchemy-1.1.5[${PYTHON_USEDEP}]
|
||||
!~dev-python/sqlalchemy-1.1.6[${PYTHON_USEDEP}]
|
||||
!~dev-python/sqlalchemy-1.1.7[${PYTHON_USEDEP}]
|
||||
!~dev-python/sqlalchemy-1.1.8[${PYTHON_USEDEP}]
|
||||
)
|
||||
>=dev-python/eventlet-0.25.1[${PYTHON_USEDEP}]
|
||||
>=dev-python/pastedeploy-1.5.0[${PYTHON_USEDEP}]
|
||||
>=dev-python/routes-2.3.1[${PYTHON_USEDEP}]
|
||||
>=dev-python/webob-1.8.1[${PYTHON_USEDEP}]
|
||||
>=dev-python/sqlalchemy-migrate-0.11.0[${PYTHON_USEDEP}]
|
||||
>=dev-python/sqlparse-0.2.2[${PYTHON_USEDEP}]
|
||||
>=dev-python/alembic-0.8.10[${PYTHON_USEDEP}]
|
||||
>=dev-python/httplib2-0.9.1[${PYTHON_USEDEP}]
|
||||
>=dev-python/oslo-config-5.2.0[${PYTHON_USEDEP}]
|
||||
>=dev-python/oslo-concurrency-3.26.0[${PYTHON_USEDEP}]
|
||||
>=dev-python/oslo-context-2.19.2[${PYTHON_USEDEP}]
|
||||
>=dev-python/oslo-upgradecheck-0.1.0[${PYTHON_USEDEP}]
|
||||
>=dev-python/oslo-utils-3.33.0[${PYTHON_USEDEP}]
|
||||
>=dev-python/stevedore-1.20.0[${PYTHON_USEDEP}]
|
||||
!~dev-python/stevedore-3.0.0[${PYTHON_USEDEP}]
|
||||
>=dev-python/futurist-1.2.0[${PYTHON_USEDEP}]
|
||||
>=dev-python/taskflow-2.16.0[${PYTHON_USEDEP}]
|
||||
>=dev-python/keystoneauth-3.4.0[${PYTHON_USEDEP}]
|
||||
>=dev-python/keystonemiddleware-4.17.0[${PYTHON_USEDEP}]
|
||||
>=dev-python/WSME-0.8.0[${PYTHON_USEDEP}]
|
||||
>=dev-python/prettytable-0.7.0[${PYTHON_USEDEP}]
|
||||
<dev-python/prettytable-0.8.0[${PYTHON_USEDEP}]
|
||||
>=dev-python/paste-2.0.2[${PYTHON_USEDEP}]
|
||||
>=dev-python/jsonschema-3.2.0[${PYTHON_USEDEP}]
|
||||
>=dev-python/python-keystoneclient-3.8.0[${PYTHON_USEDEP}]
|
||||
>=dev-python/pyopenssl-17.1.0[${PYTHON_USEDEP}]
|
||||
>=dev-python/six-1.10.0[${PYTHON_USEDEP}]
|
||||
>=dev-python/oslo-db-5.0.0[${PYTHON_USEDEP}]
|
||||
>=dev-python/oslo-i18n-3.15.3[${PYTHON_USEDEP}]
|
||||
>=dev-python/oslo-log-3.36.0[${PYTHON_USEDEP}]
|
||||
>=dev-python/oslo-messaging-5.29.0[${PYTHON_USEDEP}]
|
||||
!~dev-python/oslo-messaging-9.0.0[${PYTHON_USEDEP}]
|
||||
>=dev-python/oslo-middleware-3.31.0[${PYTHON_USEDEP}]
|
||||
>=dev-python/oslo-reports-1.18.0[${PYTHON_USEDEP}]
|
||||
>=dev-python/oslo-policy-2.4.1[${PYTHON_USEDEP}]
|
||||
>=dev-python/retrying-1.2.3[${PYTHON_USEDEP}]
|
||||
!~dev-python/retrying-1.3.0[${PYTHON_USEDEP}]
|
||||
>=dev-python/osprofiler-1.4.0[${PYTHON_USEDEP}]
|
||||
>=dev-python/glance_store-2.3.0[${PYTHON_USEDEP}]
|
||||
>=dev-python/debtcollector-1.2.0[${PYTHON_USEDEP}]
|
||||
>=dev-python/cryptography-2.1[${PYTHON_USEDEP}]
|
||||
>=dev-python/cursive-0.2.1[${PYTHON_USEDEP}]
|
||||
>=dev-python/iso8601-0.1.11[${PYTHON_USEDEP}]
|
||||
>=dev-python/os-win-3.0.0[${PYTHON_USEDEP}]
|
||||
>=dev-python/castellan-0.17.0[${PYTHON_USEDEP}]
|
||||
acct-user/glance
|
||||
acct-group/glance
|
||||
"
|
||||
|
||||
python_prepare_all() {
|
||||
sed -i '/xattr/d' test-requirements.txt || die
|
||||
sed -i '/pysendfile/d' test-requirements.txt || die
|
||||
sed -i '/^hacking/d' test-requirements.txt || die
|
||||
distutils-r1_python_prepare_all
|
||||
}
|
||||
|
||||
python_compile_all() {
|
||||
if [ ! -z ${EGIT_BRANCH+x} ]; then
|
||||
use doc && "${PYTHON}" setup.py build_sphinx
|
||||
fi
|
||||
}
|
||||
|
||||
python_install_all() {
|
||||
distutils-r1_python_install_all
|
||||
|
||||
newinitd "${FILESDIR}/glance.initd" glance-api
|
||||
|
||||
diropts -m 0750 -o glance -g glance
|
||||
dodir /var/log/glance /var/lib/glance/images /var/lib/glance/scrubber
|
||||
keepdir /etc/glance
|
||||
keepdir /var/log/glance
|
||||
keepdir /var/lib/glance/images
|
||||
keepdir /var/lib/glance/scrubber
|
||||
|
||||
insinto /etc/glance
|
||||
insopts -m 0640 -o glance -g glance
|
||||
doins -r etc/*.ini etc/*.conf etc/*.sample etc/*.json etc/meta*
|
||||
|
||||
use doc && local HTML_DOCS=( doc/build/html/. )
|
||||
distutils-r1_python_install_all
|
||||
rm -r "${ED}"/usr/etc
|
||||
}
|
@ -0,0 +1,143 @@
|
||||
# Copyright 1999-2020 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
PYTHON_COMPAT=( python3_7 python3_8 )
|
||||
DISTUTILS_USE_SETUPTOOLS=rdepend
|
||||
inherit distutils-r1
|
||||
|
||||
DESCRIPTION="Services for discovering, registering, and retrieving VM images"
|
||||
HOMEPAGE="https://launchpad.net/glance"
|
||||
|
||||
if [[ ${PV} == *9999 ]];then
|
||||
inherit git-r3
|
||||
EGIT_REPO_URI="https://github.com/openstack/glance.git"
|
||||
EGIT_BRANCH="stable/victoria"
|
||||
else
|
||||
SRC_URI="https://tarballs.openstack.org/${PN}/${P}.tar.gz"
|
||||
KEYWORDS="~amd64 ~arm64 ~x86"
|
||||
fi
|
||||
|
||||
LICENSE="Apache-2.0"
|
||||
SLOT="0"
|
||||
IUSE="doc mysql postgres +sqlite +swift"
|
||||
REQUIRED_USE="|| ( mysql postgres sqlite )"
|
||||
|
||||
#note to self, wsgiref is a python builtin, no need to package it
|
||||
#>=dev-python/wsgiref-0.1.2[${PYTHON_USEDEP}]
|
||||
|
||||
DEPEND="
|
||||
>=dev-python/pbr-2.0.0[${PYTHON_USEDEP}]
|
||||
!~dev-python/pbr-2.1.0[${PYTHON_USEDEP}]
|
||||
"
|
||||
RDEPEND="
|
||||
>=dev-python/pbr-2.0.0[${PYTHON_USEDEP}]
|
||||
!~dev-python/pbr-2.1.0[${PYTHON_USEDEP}]
|
||||
>=dev-python/defusedxml-0.6.0[${PYTHON_USEDEP}]
|
||||
sqlite? (
|
||||
>=dev-python/sqlalchemy-1.0.10[sqlite,${PYTHON_USEDEP}]
|
||||
!~dev-python/sqlalchemy-1.1.5[sqlite,${PYTHON_USEDEP}]
|
||||
!~dev-python/sqlalchemy-1.1.6[sqlite,${PYTHON_USEDEP}]
|
||||
!~dev-python/sqlalchemy-1.1.7[sqlite,${PYTHON_USEDEP}]
|
||||
!~dev-python/sqlalchemy-1.1.8[sqlite,${PYTHON_USEDEP}]
|
||||
)
|
||||
mysql? (
|
||||
>=dev-python/pymysql-0.7.6[${PYTHON_USEDEP}]
|
||||
!~dev-python/pymysql-0.7.7[${PYTHON_USEDEP}]
|
||||
>=dev-python/sqlalchemy-1.0.10[${PYTHON_USEDEP}]
|
||||
!~dev-python/sqlalchemy-1.1.5[${PYTHON_USEDEP}]
|
||||
!~dev-python/sqlalchemy-1.1.6[${PYTHON_USEDEP}]
|
||||
!~dev-python/sqlalchemy-1.1.7[${PYTHON_USEDEP}]
|
||||
!~dev-python/sqlalchemy-1.1.8[${PYTHON_USEDEP}]
|
||||
)
|
||||
postgres? (
|
||||
>=dev-python/psycopg-2.5.0[${PYTHON_USEDEP}]
|
||||
>=dev-python/sqlalchemy-1.0.10[${PYTHON_USEDEP}]
|
||||
!~dev-python/sqlalchemy-1.1.5[${PYTHON_USEDEP}]
|
||||
!~dev-python/sqlalchemy-1.1.6[${PYTHON_USEDEP}]
|
||||
!~dev-python/sqlalchemy-1.1.7[${PYTHON_USEDEP}]
|
||||
!~dev-python/sqlalchemy-1.1.8[${PYTHON_USEDEP}]
|
||||
)
|
||||
>=dev-python/eventlet-0.25.1[${PYTHON_USEDEP}]
|
||||
>=dev-python/pastedeploy-1.5.0[${PYTHON_USEDEP}]
|
||||
>=dev-python/routes-2.3.1[${PYTHON_USEDEP}]
|
||||
>=dev-python/webob-1.8.1[${PYTHON_USEDEP}]
|
||||
>=dev-python/sqlalchemy-migrate-0.11.0[${PYTHON_USEDEP}]
|
||||
>=dev-python/sqlparse-0.2.2[${PYTHON_USEDEP}]
|
||||
>=dev-python/alembic-0.8.10[${PYTHON_USEDEP}]
|
||||
>=dev-python/httplib2-0.9.1[${PYTHON_USEDEP}]
|
||||
>=dev-python/oslo-config-5.2.0[${PYTHON_USEDEP}]
|
||||
>=dev-python/oslo-concurrency-3.26.0[${PYTHON_USEDEP}]
|
||||
>=dev-python/oslo-context-2.19.2[${PYTHON_USEDEP}]
|
||||
>=dev-python/oslo-upgradecheck-0.1.0[${PYTHON_USEDEP}]
|
||||
>=dev-python/oslo-utils-3.33.0[${PYTHON_USEDEP}]
|
||||
>=dev-python/stevedore-1.20.0[${PYTHON_USEDEP}]
|
||||
!~dev-python/stevedore-3.0.0[${PYTHON_USEDEP}]
|
||||
>=dev-python/futurist-1.2.0[${PYTHON_USEDEP}]
|
||||
>=dev-python/taskflow-2.16.0[${PYTHON_USEDEP}]
|
||||
>=dev-python/keystoneauth-3.4.0[${PYTHON_USEDEP}]
|
||||
>=dev-python/keystonemiddleware-4.17.0[${PYTHON_USEDEP}]
|
||||
>=dev-python/WSME-0.8.0[${PYTHON_USEDEP}]
|
||||
>=dev-python/prettytable-0.7.0[${PYTHON_USEDEP}]
|
||||
<dev-python/prettytable-0.8.0[${PYTHON_USEDEP}]
|
||||
>=dev-python/paste-2.0.2[${PYTHON_USEDEP}]
|
||||
>=dev-python/jsonschema-3.2.0[${PYTHON_USEDEP}]
|
||||
>=dev-python/python-keystoneclient-3.8.0[${PYTHON_USEDEP}]
|
||||
>=dev-python/pyopenssl-17.1.0[${PYTHON_USEDEP}]
|
||||
>=dev-python/six-1.10.0[${PYTHON_USEDEP}]
|
||||
>=dev-python/oslo-db-5.0.0[${PYTHON_USEDEP}]
|
||||
>=dev-python/oslo-i18n-3.15.3[${PYTHON_USEDEP}]
|
||||
>=dev-python/oslo-log-3.36.0[${PYTHON_USEDEP}]
|
||||
>=dev-python/oslo-messaging-5.29.0[${PYTHON_USEDEP}]
|
||||
!~dev-python/oslo-messaging-9.0.0[${PYTHON_USEDEP}]
|
||||
>=dev-python/oslo-middleware-3.31.0[${PYTHON_USEDEP}]
|
||||
>=dev-python/oslo-reports-1.18.0[${PYTHON_USEDEP}]
|
||||
>=dev-python/oslo-policy-2.4.1[${PYTHON_USEDEP}]
|
||||
>=dev-python/retrying-1.2.3[${PYTHON_USEDEP}]
|
||||
!~dev-python/retrying-1.3.0[${PYTHON_USEDEP}]
|
||||
>=dev-python/osprofiler-1.4.0[${PYTHON_USEDEP}]
|
||||
>=dev-python/glance_store-2.3.0[${PYTHON_USEDEP}]
|
||||
>=dev-python/debtcollector-1.2.0[${PYTHON_USEDEP}]
|
||||
>=dev-python/cryptography-2.1[${PYTHON_USEDEP}]
|
||||
>=dev-python/cursive-0.2.1[${PYTHON_USEDEP}]
|
||||
>=dev-python/iso8601-0.1.11[${PYTHON_USEDEP}]
|
||||
>=dev-python/os-win-3.0.0[${PYTHON_USEDEP}]
|
||||
>=dev-python/castellan-0.17.0[${PYTHON_USEDEP}]
|
||||
acct-user/glance
|
||||
acct-group/glance
|
||||
"
|
||||
|
||||
python_prepare_all() {
|
||||
sed -i '/xattr/d' test-requirements.txt || die
|
||||
sed -i '/pysendfile/d' test-requirements.txt || die
|
||||
sed -i '/^hacking/d' test-requirements.txt || die
|
||||
distutils-r1_python_prepare_all
|
||||
}
|
||||
|
||||
python_compile_all() {
|
||||
if [ ! -z ${EGIT_BRANCH+x} ]; then
|
||||
use doc && "${PYTHON}" setup.py build_sphinx
|
||||
fi
|
||||
}
|
||||
|
||||
python_install_all() {
|
||||
distutils-r1_python_install_all
|
||||
|
||||
newinitd "${FILESDIR}/glance.initd" glance-api
|
||||
|
||||
diropts -m 0750 -o glance -g glance
|
||||
dodir /var/log/glance /var/lib/glance/images /var/lib/glance/scrubber
|
||||
keepdir /etc/glance
|
||||
keepdir /var/log/glance
|
||||
keepdir /var/lib/glance/images
|
||||
keepdir /var/lib/glance/scrubber
|
||||
|
||||
insinto /etc/glance
|
||||
insopts -m 0640 -o glance -g glance
|
||||
doins -r etc/*.ini etc/*.conf etc/*.sample etc/*.json etc/meta*
|
||||
|
||||
use doc && local HTML_DOCS=( doc/build/html/. )
|
||||
distutils-r1_python_install_all
|
||||
rm -r "${ED}"/usr/etc
|
||||
}
|
@ -0,0 +1,89 @@
|
||||
# Copyright 1999-2020 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
inherit java-pkg-2
|
||||
|
||||
MY_PN="${PN%-bin}"
|
||||
MY_P="${MY_PN}-${PV}"
|
||||
|
||||
DESCRIPTION="Tool for managing events and logs"
|
||||
HOMEPAGE="https://www.elastic.co/products/logstash"
|
||||
SRC_URI="x-pack? ( https://artifacts.elastic.co/downloads/${MY_PN}/${MY_P}.tar.gz )
|
||||
!x-pack? ( https://artifacts.elastic.co/downloads/${MY_PN}/${MY_PN}-oss-${PV}.tar.gz )"
|
||||
|
||||
# source: LICENSE.txt and NOTICE.txt
|
||||
LICENSE="Apache-2.0 MIT x-pack? ( Elastic )"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64"
|
||||
IUSE="x-pack"
|
||||
|
||||
RESTRICT="strip"
|
||||
QA_PREBUILT="opt/logstash/vendor/jruby/lib/jni/*/libjffi*.so"
|
||||
|
||||
RDEPEND="acct-group/logstash
|
||||
acct-user/logstash
|
||||
virtual/jre"
|
||||
|
||||
S="${WORKDIR}/${MY_P}"
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
|
||||
rm vendor/jruby/lib/jni/aarch64-Linux/libjffi-1.2.so \
|
||||
vendor/jruby/lib/jni/arm-Linux/libjffi-1.2.so \
|
||||
vendor/jruby/lib/jni/i386-SunOS/libjffi-1.2.so \
|
||||
vendor/jruby/lib/jni/mips64el-Linux/libjffi-1.2.so \
|
||||
vendor/jruby/lib/jni/ppc64-Linux/libjffi-1.2.so \
|
||||
vendor/jruby/lib/jni/ppc64le-Linux/libjffi-1.2.so \
|
||||
vendor/jruby/lib/jni/sparcv9-Linux/libjffi-1.2.so \
|
||||
vendor/jruby/lib/jni/sparcv9-SunOS/libjffi-1.2.so \
|
||||
vendor/jruby/lib/jni/x86_64-DragonFlyBSD/libjffi-1.2.so \
|
||||
vendor/jruby/lib/jni/x86_64-FreeBSD/libjffi-1.2.so \
|
||||
vendor/jruby/lib/jni/x86_64-SunOS/libjffi-1.2.so || die
|
||||
}
|
||||
|
||||
src_install() {
|
||||
keepdir /etc/"${MY_PN}"/{conf.d,patterns,plugins}
|
||||
keepdir "/var/log/${MY_PN}"
|
||||
|
||||
insinto "/usr/share/${MY_PN}"
|
||||
newins "${FILESDIR}/agent.conf.sample" agent.conf
|
||||
|
||||
rm -v config/{pipelines.yml,startup.options} || die
|
||||
insinto /etc/${MY_PN}
|
||||
doins -r config/.
|
||||
doins "${FILESDIR}/pipelines.yml"
|
||||
rm -rv config data || die
|
||||
|
||||
insinto "/opt/${MY_PN}"
|
||||
doins -r .
|
||||
fperms 0755 "/opt/${MY_PN}/bin/${MY_PN}" "/opt/${MY_PN}/vendor/jruby/bin/jruby" "/opt/${MY_PN}/bin/logstash-plugin"
|
||||
|
||||
newconfd "${FILESDIR}/${MY_PN}.confd-r2" "${MY_PN}"
|
||||
newinitd "${FILESDIR}/${MY_PN}.initd-r2" "${MY_PN}"
|
||||
|
||||
insinto /usr/share/eselect/modules
|
||||
doins "${FILESDIR}"/logstash-plugin.eselect
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
ewarn "Self installed plugins are removed during Logstash upgrades (Bug #622602)"
|
||||
ewarn "Install the plugins via eselect module that will automatically re-install"
|
||||
ewarn "all self installed plugins after Logstash upgrades."
|
||||
elog
|
||||
elog "Installing plugins:"
|
||||
elog "eselect logstash-plugin install logstash-output-gelf"
|
||||
elog
|
||||
|
||||
elog "Reinstalling self installed plugins (installed via eselect module):"
|
||||
eselect logstash-plugin reinstall
|
||||
|
||||
elog
|
||||
elog "Sample configuration:"
|
||||
elog "${EROOT}/usr/share/${MY_PN}"
|
||||
elog
|
||||
elog "The default pipeline configuration expects the configuration(s) to be found in:"
|
||||
elog "${EROOT}/etc/logstash/conf.d/*.conf"
|
||||
}
|
@ -1 +0,0 @@
|
||||
DIST recursos-2.0.tbz2 29480 BLAKE2B d7b5a4954349d6e2c940634057d4f47623ba91c62874ec4fac881060fe4687ecc606672d478717d06967f66d4cd0b65baf49fccd17984eb030b0b37eaf6a6a4f SHA512 391bd253b62cbc2afbf054baa368bef5f7847624889188829557244f132bf484d4d4652a8c524da95ae3b39909fbdc37796eb325839bcd5e8982f7dcb6cd89e4
|
@ -1,9 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
|
||||
<pkgmetadata>
|
||||
<!-- maintainer-needed -->
|
||||
<longdescription>
|
||||
A set of script to extrac usefull info about your system and report it
|
||||
in plain text or html. It can generate Grpahs using rrdtools.
|
||||
</longdescription>
|
||||
</pkgmetadata>
|
@ -1,57 +0,0 @@
|
||||
# Copyright 1999-2017 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=4
|
||||
|
||||
DESCRIPTION="Script to create html and text report about your system"
|
||||
HOMEPAGE="http://www.josealberto.org"
|
||||
SRC_URI="mirror://gentoo/${P}.tbz2"
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
IUSE=""
|
||||
|
||||
DEPEND=""
|
||||
RDEPEND="app-shells/bash
|
||||
net-analyzer/rrdtool[graph]
|
||||
virtual/imagemagick-tools"
|
||||
|
||||
S=${WORKDIR}/r2
|
||||
|
||||
src_install() {
|
||||
WWWDIR="/var/www/localhost/htdocs/R2"
|
||||
|
||||
insinto /etc
|
||||
doins recursos2.conf
|
||||
|
||||
dobin R2createrrd.sh R2generarrd.sh R2updaterrd.sh Recursos2.sh
|
||||
|
||||
dodir ${WWWDIR}
|
||||
insinto ${WWWDIR}
|
||||
doins R2/*.html
|
||||
|
||||
dodir ${WWWDIR}/common
|
||||
insinto ${WWWDIR}/common
|
||||
doins R2/common/*
|
||||
|
||||
dodir ${WWWDIR}/rrd/mini
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
elog "Fist you must configure /etc/recursos2.conf"
|
||||
elog "Then follow these steps:"
|
||||
elog
|
||||
elog "1. Run R2createrrd.sh"
|
||||
elog
|
||||
elog "2. Add crontab jobs (this is an example):"
|
||||
elog "*/2 * * * * root /usr/bin/R2updaterrd.sh"
|
||||
elog "*/5 * * * * root /usr/bin/R2generarrd.sh"
|
||||
elog "*/10 * * * * root /usr/bin/Recursos2.sh \ "
|
||||
elog " title general system disks net \ "
|
||||
elog " > /var/www/localhost/htdocs/recursos.html"
|
||||
elog
|
||||
elog "You can use Recursos2.sh to extract info about your system"
|
||||
elog "in html or plain text and mail the file or whatever."
|
||||
elog
|
||||
}
|
Binary file not shown.
@ -0,0 +1,35 @@
|
||||
From 483743aa9f194376a8b496ac4e58a946070a36af Mon Sep 17 00:00:00 2001
|
||||
From: Michel Ludwig <michel.ludwig@kdemail.net>
|
||||
Date: Sun, 1 Dec 2019 09:09:55 +0100
|
||||
Subject: [PATCH] Don't crash when deleting templates
|
||||
|
||||
BUG: 413506
|
||||
---
|
||||
src/dialogs/managetemplatesdialog.cpp | 11 -----------
|
||||
1 file changed, 11 deletions(-)
|
||||
|
||||
diff --git a/src/dialogs/managetemplatesdialog.cpp b/src/dialogs/managetemplatesdialog.cpp
|
||||
index fe6537ad..c5298b21 100644
|
||||
--- a/src/dialogs/managetemplatesdialog.cpp
|
||||
+++ b/src/dialogs/managetemplatesdialog.cpp
|
||||
@@ -317,17 +317,6 @@ bool ManageTemplatesDialog::removeTemplate()
|
||||
|
||||
KileTemplate::Info templateInfo = templateItem->getTemplateInfo();
|
||||
|
||||
- KIO::StatJob* statJob = KIO::stat(QUrl::fromUserInput(templateInfo.path), KIO::StatJob::DestinationSide, 0);
|
||||
- KIO::StatJob* statJob2 = KIO::stat(QUrl::fromUserInput(templateInfo.icon), KIO::StatJob::DestinationSide, 0);
|
||||
- KJobWidgets::setWindow(statJob, this);
|
||||
- KJobWidgets::setWindow(statJob2, this);
|
||||
- statJob->exec();
|
||||
- statJob2->exec();
|
||||
- if ((statJob->error() && statJob2->error()) || !QFileInfo(templateInfo.icon).exists()) {
|
||||
- KMessageBox::error(this, i18n("Sorry, but you do not have the necessary permissions to remove the selected template."));
|
||||
- return false;
|
||||
- }
|
||||
-
|
||||
if (KMessageBox::warningYesNo(this, i18n("You are about to remove the template \"%1\"; are you sure?", templateInfo.name)) == KMessageBox::No) {
|
||||
return false;
|
||||
}
|
||||
--
|
||||
GitLab
|
||||
|
@ -0,0 +1,25 @@
|
||||
From 5c268679da2fb2cdc414890bdd79a5592e37cb22 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Andrius=20=C5=A0tikonas?= <andrius@stikonas.eu>
|
||||
Date: Tue, 15 Sep 2020 15:33:51 +0100
|
||||
Subject: [PATCH] Fix KToolbar usage.
|
||||
|
||||
---
|
||||
src/widgets/scriptsmanagementwidget.cpp | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/src/widgets/scriptsmanagementwidget.cpp b/src/widgets/scriptsmanagementwidget.cpp
|
||||
index 79552da3..94f58f18 100644
|
||||
--- a/src/widgets/scriptsmanagementwidget.cpp
|
||||
+++ b/src/widgets/scriptsmanagementwidget.cpp
|
||||
@@ -66,7 +66,7 @@ ScriptsManagement::ScriptsManagement(KileInfo *kileInfo, QWidget *parent, const
|
||||
baseLayout->setContentsMargins(0, 0, 0, 0);
|
||||
setLayout(baseLayout);
|
||||
|
||||
- m_toolBar = new KToolBar(this, "scriptControlToolBar");
|
||||
+ m_toolBar = new KToolBar("scriptControlToolBar", this);
|
||||
m_toolBar->setToolButtonStyle(Qt::ToolButtonIconOnly);
|
||||
m_toolBar->setIconDimensions(KIconLoader::SizeSmall);
|
||||
|
||||
--
|
||||
GitLab
|
||||
|
@ -0,0 +1,164 @@
|
||||
From 7a55cf2d93c9daa13f2fa2ec1ae25646507cfc0c Mon Sep 17 00:00:00 2001
|
||||
From: Michel Ludwig <michel.ludwig@kdemail.net>
|
||||
Date: Sun, 1 Dec 2019 15:56:05 +0100
|
||||
Subject: [PATCH] Fix overriding of existing templates
|
||||
|
||||
Also, don't delete the original file after the template has been
|
||||
created from it.
|
||||
|
||||
BUG: 413473
|
||||
|
||||
* asturm 2020-10-17: backport to 2.9.93 (drop unnecessary string change)
|
||||
|
||||
---
|
||||
src/dialogs/managetemplatesdialog.cpp | 7 ++-
|
||||
src/templates.cpp | 78 ++-------------------------
|
||||
src/templates.h | 10 ++--
|
||||
3 files changed, 12 insertions(+), 83 deletions(-)
|
||||
|
||||
diff --git a/src/dialogs/managetemplatesdialog.cpp b/src/dialogs/managetemplatesdialog.cpp
|
||||
index c5298b21..77d5d6ff 100644
|
||||
--- a/src/dialogs/managetemplatesdialog.cpp
|
||||
+++ b/src/dialogs/managetemplatesdialog.cpp
|
||||
@@ -292,11 +292,10 @@ void ManageTemplatesDialog::addTemplate()
|
||||
reject();
|
||||
return;
|
||||
}
|
||||
- returnValue = m_templateManager->replace(templateInfo, m_sourceURL, templateName, iconURL);
|
||||
- }
|
||||
- else {
|
||||
- returnValue = m_templateManager->add(m_sourceURL, templateName, iconURL);
|
||||
}
|
||||
+
|
||||
+ returnValue = m_templateManager->add(m_sourceURL, templateName, iconURL);
|
||||
+
|
||||
if (!returnValue) {
|
||||
KMessageBox::error(this, i18n("Failed to create the template."));
|
||||
reject();
|
||||
diff --git a/src/templates.cpp b/src/templates.cpp
|
||||
--- a/src/templates.cpp
|
||||
+++ b/src/templates.cpp
|
||||
@@ -82,7 +82,10 @@ bool Manager::copyAppData(const QUrl &src, const QString& subdir, const QString&
|
||||
testDir.mkpath(dir);
|
||||
}
|
||||
// copy file
|
||||
- KIO::FileCopyJob* copyJob = KIO::file_copy(src, targetURL);
|
||||
+ if(src == targetURL) { // copying a file over itself
|
||||
+ return true;
|
||||
+ }
|
||||
+ KIO::FileCopyJob* copyJob = KIO::file_copy(src, targetURL, -1, KIO::Overwrite);
|
||||
KJobWidgets::setWindow(copyJob, m_kileInfo->mainWindow());
|
||||
return copyJob->exec();
|
||||
}
|
||||
@@ -130,77 +133,6 @@ bool Manager::remove(Info ti) {
|
||||
return removeAppData(ti.path) && removeAppData(ti.icon);
|
||||
}
|
||||
|
||||
-bool Manager::replace(const KileTemplate::Info& toBeReplaced, const QUrl &newTemplateSourceURL, const QString& newName, const QUrl& newIcon) {
|
||||
- KileDocument::Type type = m_kileInfo->extensions()->determineDocumentType(newTemplateSourceURL);
|
||||
-
|
||||
- //start by copying the files that belong to the new template to a safe place
|
||||
- QString templateTempFile, iconTempFile;
|
||||
-
|
||||
- if( newTemplateSourceURL.isLocalFile() ) {
|
||||
- // file protocol. We do not need the network
|
||||
- templateTempFile = newTemplateSourceURL.toLocalFile();
|
||||
- }
|
||||
- else {
|
||||
- QTemporaryFile tmpFile;
|
||||
- tmpFile.setAutoRemove( false );
|
||||
- tmpFile.open();
|
||||
-
|
||||
- templateTempFile = tmpFile.fileName();
|
||||
- m_TempFilePath = tmpFile.fileName();
|
||||
- KIO::FileCopyJob* fileCopyJob = KIO::file_copy( newTemplateSourceURL, QUrl::fromLocalFile(templateTempFile), -1, KIO::Overwrite );
|
||||
- KJobWidgets::setWindow( fileCopyJob, m_kileInfo->mainWindow() );
|
||||
-
|
||||
- if( ! fileCopyJob->exec() ) {
|
||||
- return false;
|
||||
- }
|
||||
- }
|
||||
-
|
||||
- if( newIcon.isLocalFile() ) {
|
||||
- // file protocol. We do not need the network
|
||||
- iconTempFile = newIcon.toLocalFile();
|
||||
- }
|
||||
- else {
|
||||
- QTemporaryFile tmpFile;
|
||||
- tmpFile.setAutoRemove( false );
|
||||
- tmpFile.open();
|
||||
-
|
||||
- iconTempFile = tmpFile.fileName();
|
||||
- m_TempFilePath = tmpFile.fileName();
|
||||
- KIO::FileCopyJob* fileCopyJob = KIO::file_copy( newIcon, QUrl::fromLocalFile(iconTempFile), -1, KIO::Overwrite );
|
||||
- KJobWidgets::setWindow( fileCopyJob, m_kileInfo->mainWindow() );
|
||||
-
|
||||
- if( ! fileCopyJob->exec() ) {
|
||||
- if( ! templateTempFile.isEmpty() )
|
||||
- QFile::remove( templateTempFile );
|
||||
- return false;
|
||||
- }
|
||||
- }
|
||||
-
|
||||
- //now delete the template that should be replaced
|
||||
- if(!remove(toBeReplaced)) {
|
||||
- if( ! templateTempFile.isEmpty() )
|
||||
- QFile::remove( templateTempFile );
|
||||
- if( ! iconTempFile.isEmpty() )
|
||||
- QFile::remove( iconTempFile );
|
||||
- }
|
||||
-
|
||||
- //finally, create the new template
|
||||
- if(!add(QUrl::fromUserInput(templateTempFile), type, newName, QUrl::fromUserInput(iconTempFile))) {
|
||||
- if( ! templateTempFile.isEmpty() )
|
||||
- QFile::remove( templateTempFile );
|
||||
- if( ! iconTempFile.isEmpty() )
|
||||
- QFile::remove( iconTempFile );
|
||||
- return false;
|
||||
- }
|
||||
-
|
||||
- if( ! templateTempFile.isEmpty() )
|
||||
- QFile::remove( templateTempFile );
|
||||
- if( ! iconTempFile.isEmpty() )
|
||||
- QFile::remove( iconTempFile );
|
||||
-
|
||||
- return true;
|
||||
-}
|
||||
-
|
||||
void Manager::scanForTemplates() {
|
||||
KILE_DEBUG_MAIN << "===scanForTemplates()===================";
|
||||
QStringList dirs = KileUtilities::locateAll(QStandardPaths::AppDataLocation, "templates", QStandardPaths::LocateDirectory);
|
||||
diff --git a/src/templates.h b/src/templates.h
|
||||
--- a/src/templates.h
|
||||
+++ b/src/templates.h
|
||||
@@ -1,7 +1,7 @@
|
||||
/***************************************************************************************
|
||||
begin : Sat Apr 26 2003
|
||||
copyright : (C) 2003 by Jeroen Wijnhout (wijnhout@science.uva.nl)
|
||||
- 2007, 2008 by Michel Ludwig (michel.ludwig@kdemail.net)
|
||||
+ 2007-2019 by Michel Ludwig (michel.ludwig@kdemail.net)
|
||||
***************************************************************************************/
|
||||
|
||||
/***************************************************************************
|
||||
@@ -79,15 +79,13 @@ public:
|
||||
**/
|
||||
bool searchForTemplate(const QString& name, KileDocument::Type& type) const;
|
||||
|
||||
- // add a template in $HOME/kile/templates/
|
||||
+ // Add a template in .kde/share/kile/templates/
|
||||
+ // This function will override any existing template.
|
||||
bool add(const QUrl &templateSourceURL, const QString &name, const QUrl &icon);
|
||||
|
||||
- // remove a template from $HOME/kile/templates/
|
||||
+ // Remove a template from .kde/share/kile/templates/
|
||||
bool remove(KileTemplate::Info ti);
|
||||
|
||||
- // replaces a template
|
||||
- bool replace(const KileTemplate::Info& toBeReplaced, const QUrl &newTemplateSourceURL, const QString& newName, const QUrl& newIcon);
|
||||
-
|
||||
// these have to be methods as we cannot use i18n calls in global objects
|
||||
static QString defaultEmptyTemplateCaption();
|
||||
static QString defaultEmptyLaTeXTemplateCaption();
|
||||
--
|
||||
GitLab
|
||||
|
@ -0,0 +1,58 @@
|
||||
From 7c050b5e306cab115573aea1bfc951aaaa1203e9 Mon Sep 17 00:00:00 2001
|
||||
From: Michel Ludwig <michel.ludwig@kdemail.net>
|
||||
Date: Fri, 22 Nov 2019 09:40:53 +0100
|
||||
Subject: [PATCH] Remove dependency on KHTML
|
||||
|
||||
---
|
||||
CMakeLists.txt | 1 -
|
||||
src/CMakeLists.txt | 2 --
|
||||
src/kilelauncher.cpp | 1 -
|
||||
3 files changed, 4 deletions(-)
|
||||
|
||||
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||
index 1bea621f..1b25e3a4 100644
|
||||
--- a/CMakeLists.txt
|
||||
+++ b/CMakeLists.txt
|
||||
@@ -46,7 +46,6 @@ find_package(KF5 5.31 REQUIRED COMPONENTS
|
||||
I18n
|
||||
IconThemes
|
||||
Init
|
||||
- KHtml
|
||||
KIO
|
||||
Parts
|
||||
TextEditor
|
||||
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
|
||||
index 77626894..e23480fd 100644
|
||||
--- a/src/CMakeLists.txt
|
||||
+++ b/src/CMakeLists.txt
|
||||
@@ -55,7 +55,6 @@ set(kile_SRCS
|
||||
dialogs/usermenu/usermenuitem.cpp
|
||||
dialogs/usermenu/usermenutree.cpp
|
||||
dialogs/validatorinputdialog.cpp
|
||||
- docpart.cpp
|
||||
documentinfo.cpp
|
||||
editorcommands.cpp
|
||||
editorextension.cpp
|
||||
@@ -238,7 +237,6 @@ PUBLIC
|
||||
KF5::Crash
|
||||
KF5::DBusAddons
|
||||
KF5::GuiAddons
|
||||
- KF5::KHtml
|
||||
KF5::I18n
|
||||
KF5::IconThemes
|
||||
KF5::KIOCore
|
||||
diff --git a/src/kilelauncher.cpp b/src/kilelauncher.cpp
|
||||
index c0bcdf9d..24a1f5b4 100644
|
||||
--- a/src/kilelauncher.cpp
|
||||
+++ b/src/kilelauncher.cpp
|
||||
@@ -16,7 +16,6 @@
|
||||
|
||||
#include <config.h>
|
||||
|
||||
-#include "docpart.h"
|
||||
#include "kileconfig.h"
|
||||
#include "kileinfo.h"
|
||||
#include "kiletool.h"
|
||||
--
|
||||
GitLab
|
||||
|
@ -0,0 +1,76 @@
|
||||
# Copyright 1999-2020 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
ECM_HANDBOOK="forceoptional"
|
||||
KDE_ORG_CATEGORY="office"
|
||||
KFMIN=5.74.0
|
||||
QTMIN=5.14.2
|
||||
inherit ecm kde.org
|
||||
|
||||
DESCRIPTION="Latex Editor and TeX shell based on KDE Frameworks"
|
||||
HOMEPAGE="https://kde.org/applications/en/kile https://kile.sourceforge.io/"
|
||||
|
||||
if [[ ${KDE_BUILD_TYPE} == release ]]; then
|
||||
SRC_URI="mirror://sourceforge/${PN}/${P}.tar.bz2"
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
fi
|
||||
|
||||
LICENSE="FDL-1.2 GPL-2"
|
||||
SLOT="5"
|
||||
IUSE="+pdf +png"
|
||||
|
||||
DEPEND="
|
||||
>=dev-qt/qtdbus-${QTMIN}:5
|
||||
>=dev-qt/qtscript-${QTMIN}:5
|
||||
>=dev-qt/qttest-${QTMIN}:5
|
||||
>=dev-qt/qtwidgets-${QTMIN}:5
|
||||
kde-apps/okular:5
|
||||
>=kde-frameworks/kconfig-${KFMIN}:5
|
||||
>=kde-frameworks/kcoreaddons-${KFMIN}:5
|
||||
>=kde-frameworks/kcrash-${KFMIN}:5
|
||||
>=kde-frameworks/kdbusaddons-${KFMIN}:5
|
||||
>=kde-frameworks/kdoctools-${KFMIN}:5
|
||||
>=kde-frameworks/kguiaddons-${KFMIN}:5
|
||||
>=kde-frameworks/ki18n-${KFMIN}:5
|
||||
>=kde-frameworks/kiconthemes-${KFMIN}:5
|
||||
>=kde-frameworks/kinit-${KFMIN}:5
|
||||
>=kde-frameworks/kio-${KFMIN}:5
|
||||
>=kde-frameworks/kparts-${KFMIN}:5
|
||||
>=kde-frameworks/ktexteditor-${KFMIN}:5
|
||||
>=kde-frameworks/kwindowsystem-${KFMIN}:5
|
||||
>=kde-frameworks/kxmlgui-${KFMIN}:5
|
||||
pdf? ( app-text/poppler[qt5] )
|
||||
"
|
||||
RDEPEND="${DEPEND}
|
||||
kde-apps/konsole:5
|
||||
kde-apps/okular:5[pdf?]
|
||||
virtual/latex-base
|
||||
virtual/tex-base
|
||||
pdf? (
|
||||
app-text/ghostscript-gpl
|
||||
app-text/texlive-core
|
||||
)
|
||||
png? (
|
||||
app-text/dvipng
|
||||
virtual/imagemagick-tools[png?]
|
||||
)
|
||||
"
|
||||
|
||||
DOCS=( AUTHORS ChangeLog kile-remote-control.txt README{,.cwl} )
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}/${P}-cmake.patch"
|
||||
"${FILESDIR}/${P}-no-khtml.patch"
|
||||
"${FILESDIR}/${P}-fix-crash-when-deleting-templates.patch"
|
||||
"${FILESDIR}/${P}-fix-overriding-existing-templates.patch"
|
||||
"${FILESDIR}/${P}-fix-ktoolbar-usage.patch"
|
||||
)
|
||||
|
||||
src_configure() {
|
||||
local mycmakeargs=(
|
||||
$(cmake_use_find_package pdf Poppler)
|
||||
)
|
||||
ecm_src_configure
|
||||
}
|
Binary file not shown.
@ -1,4 +1,8 @@
|
||||
DIST firecracker-v0.22.0-aarch64 1615168 BLAKE2B 56965a1999038e9b59e37230177812b936ad1b3cba91b6f805a1a6ecc81903f093c13b75ff78c8720d67596bdd71378cc757bda0b6061e3fb4d62607e299b065 SHA512 fb42bc5ecd0af487490f2c4bd3804d2430263740bbdec66c063d9b6c865d6b9c42b31cafb78d4a0cc40c11cc5242608b9d30676e55ac2b8dcb05d5f3db535bdf
|
||||
DIST firecracker-v0.22.0-x86_64 1657736 BLAKE2B 84dbe8db596017e312fad1cd3c72d1b5d7306ad400a320431c8cae5b901b534f2735ac75cb5b9133c6c6f2603b877e4842d54165972a46df4193fbbc513c3b2d SHA512 ac9544e8b770ff7a0c9234feb3154522bd6163f3903993cd019cc4abaa90ad24447f18e65e1022aafb7274ca97281286f898a50ac9f27c7f661d48df52d7fd08
|
||||
DIST firecracker-v0.22.1-aarch64 1624032 BLAKE2B e5705e423e032c480bbdd499bb4e0b5674079b096bd0983f21f3e9c664d442a76f3a195075a641445505b777823a4c1670a1544828b84370e21d5bde4c091ed3 SHA512 4d9222e19d616a017780711c426d0aa5b41571e744648cc3a922601857387ebcb9dc0a238019e7a33e45445221d93d739c0ec8c465ab922583bac2970a1af003
|
||||
DIST firecracker-v0.22.1-x86_64 1658032 BLAKE2B 1513ed2b0ad550a0e21fb77bc5fb84091ff73b4e79c716238b14366234d303bb391d3e6a58878529f8131c72bd53d81a18caf06230d290bbefc08f280d856e5c SHA512 5327a22a1c0dc4e9a1ceba8455933131ddb9ef91e0a9b875a7b5c5f45f309fe40b841a26b5d0bdd24e18bb7472c264598d59fb0db20bdf5ec39f47b23ede44fa
|
||||
DIST jailer-v0.22.0-aarch64 1322088 BLAKE2B 72db7eba02371af2a53b6ebd8c9fb909bd027cdd2b4207e0b2a02febe587780f9aa3be665b37580907ab8a58d8745cbcda90a85bda56a42b2eb8be9a931af13f SHA512 86ca629b3060cefa9e31292844486c6d9b6fa0538b6d515e4cbb07fa4a675ce93d5f87fcd769f62aea0df029cdbd7a5055a282b8344ed35d895606aca7f22a14
|
||||
DIST jailer-v0.22.0-x86_64 1427600 BLAKE2B 7ab09cce8963c89dae7c89c3a2d1dc582fdf8c11c3e051deb08c70fd2995a2154c493432e39851bebc62c1f6a9f98cfc9a9fa4107c5d9cf8ba940d4bb3349d86 SHA512 f2dcaee775cd1cdea4c1c1f6e89b82ba6636ab065291b704faaa836f864f14802a56af76ce397d7f98e9420d55720dc4459ae4443babfc7bb16d64dde11cb854
|
||||
DIST jailer-v0.22.1-aarch64 1322088 BLAKE2B 7e5e1d106789af37a9a113b005184c2e65943beaec08e99b149bdcd72237c089d9a8126e2b498b433dd94181ab8042205cad31beba1352707081fdc08e7a4293 SHA512 6e147d581870a46e6cad7efb949265a47d1471ae5744216f8a591ffa00001590e2939b8153107b3188e224069207c82624efc98ae5d5becb6c324860ce509548
|
||||
DIST jailer-v0.22.1-x86_64 1427600 BLAKE2B f592c951594a2739cb56accbfc2c971f44aa7d4fde36d8a170b8c72749ba25020caf6505865ca9ab4932386b9a9a4e0b2bf984fc2712b6d4c5bf7c3df23aa085 SHA512 f28b08c5baf003eae93bbb7199136c76b9c104928ccb74ad7ca3af0269c4eebd80528a995caa5aff5bc70997932cd1485e416046a8e4a6c199be430c4a72213a
|
||||
|
@ -0,0 +1,82 @@
|
||||
# Copyright 2020 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
inherit linux-info
|
||||
|
||||
DESCRIPTION="Secure and fast microVMs for serverless computing (static build)"
|
||||
HOMEPAGE="https://firecracker-microvm.github.io https://github.com/firecracker-microvm/firecracker"
|
||||
SRC_URI="
|
||||
amd64? (
|
||||
https://github.com/firecracker-microvm/firecracker/releases/download/v${PV}/firecracker-v${PV}-x86_64
|
||||
https://github.com/firecracker-microvm/firecracker/releases/download/v${PV}/jailer-v${PV}-x86_64
|
||||
)
|
||||
arm64? (
|
||||
https://github.com/firecracker-microvm/firecracker/releases/download/v${PV}/firecracker-v${PV}-aarch64
|
||||
https://github.com/firecracker-microvm/firecracker/releases/download/v${PV}/jailer-v${PV}-aarch64
|
||||
)"
|
||||
|
||||
LICENSE="|| ( Apache-2.0 MIT Apache-2.0-with-LLVM-exceptions ) MPL-2.0"
|
||||
SLOT="0"
|
||||
KEYWORDS="-* ~amd64"
|
||||
|
||||
RESTRICT="test strip"
|
||||
|
||||
RDEPEND="!app-emulation/firecracker
|
||||
acct-group/kvm"
|
||||
|
||||
QA_PREBUILT="/usr/bin/firecracker
|
||||
/usr/bin/jailer"
|
||||
|
||||
S="${WORKDIR}"
|
||||
|
||||
pkg_pretend() {
|
||||
if use kernel_linux && kernel_is lt 4 14; then
|
||||
eerror "Firecracker requires a host kernel of 4.14 or higher."
|
||||
elif use kernel_linux; then
|
||||
if ! linux_config_exists; then
|
||||
eerror "Unable to check your kernel for KVM support"
|
||||
else
|
||||
CONFIG_CHECK="~KVM ~TUN ~BRIDGE ~VHOST_VSOCK"
|
||||
ERROR_KVM="You must enable KVM in your kernel to continue"
|
||||
ERROR_KVM_AMD="If you have an AMD CPU, you must enable KVM_AMD in"
|
||||
ERROR_KVM_AMD+=" your kernel configuration."
|
||||
ERROR_KVM_INTEL="If you have an Intel CPU, you must enable"
|
||||
ERROR_KVM_INTEL+=" KVM_INTEL in your kernel configuration."
|
||||
ERROR_TUN="You will need the Universal TUN/TAP driver compiled"
|
||||
ERROR_TUN+=" into your kernel or loaded as a module to use"
|
||||
ERROR_TUN+=" virtual network devices."
|
||||
ERROR_BRIDGE="You will also need support for 802.1d"
|
||||
ERROR_BRIDGE+=" Ethernet Bridging for some network configurations."
|
||||
ERROR_VHOST_VSOCK="To use AF_VSOCK sockets for communication"
|
||||
ERROR_VHOST_VSOCK+=" between host and guest, you will need to enable"
|
||||
ERROR_VHOST_VSOCK+=" the vhost virtio-vsock driver in your kernel."
|
||||
|
||||
if use amd64 || use amd64-linux; then
|
||||
if grep -q AuthenticAMD /proc/cpuinfo; then
|
||||
CONFIG_CHECK+=" ~KVM_AMD"
|
||||
elif grep -q GenuineIntel /proc/cpuinfo; then
|
||||
CONFIG_CHECK+=" ~KVM_INTEL"
|
||||
fi
|
||||
fi
|
||||
|
||||
# Now do the actual checks setup above
|
||||
check_extra_config
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
src_unpack() { :; }
|
||||
src_compile() { :; }
|
||||
|
||||
src_install() {
|
||||
if use amd64; then
|
||||
my_arch=x86_64
|
||||
elif use arm64; then
|
||||
my_arch=aarch64
|
||||
fi
|
||||
|
||||
newbin "${DISTDIR}/firecracker-v${PV}-${my_arch}" firecracker
|
||||
newbin "${DISTDIR}/jailer-v${PV}-${my_arch}" jailer
|
||||
}
|
@ -0,0 +1,856 @@
|
||||
# Copyright 1999-2020 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI="7"
|
||||
|
||||
PYTHON_COMPAT=( python3_{6,7,8,9} )
|
||||
PYTHON_REQ_USE="ncurses,readline"
|
||||
|
||||
PLOCALES="bg de_DE fr_FR hu it sv tr zh_CN"
|
||||
|
||||
FIRMWARE_ABI_VERSION="4.0.0-r50"
|
||||
|
||||
inherit eutils linux-info toolchain-funcs multilib python-r1 \
|
||||
udev fcaps readme.gentoo-r1 pax-utils l10n xdg-utils
|
||||
|
||||
if [[ ${PV} = *9999* ]]; then
|
||||
EGIT_REPO_URI="https://git.qemu.org/git/qemu.git"
|
||||
EGIT_SUBMODULES=(
|
||||
tests/fp/berkeley-{test,soft}float-3
|
||||
ui/keycodemapdb
|
||||
)
|
||||
inherit git-r3
|
||||
SRC_URI=""
|
||||
else
|
||||
SRC_URI="https://download.qemu.org/${P}.tar.xz"
|
||||
KEYWORDS="~amd64 ~arm64 ~ppc ~ppc64 ~x86"
|
||||
fi
|
||||
|
||||
DESCRIPTION="QEMU + Kernel-based Virtual Machine userland tools"
|
||||
HOMEPAGE="http://www.qemu.org http://www.linux-kvm.org"
|
||||
|
||||
LICENSE="GPL-2 LGPL-2 BSD-2"
|
||||
SLOT="0"
|
||||
|
||||
IUSE="accessibility +aio alsa bzip2 capstone +caps +curl debug doc
|
||||
+fdt glusterfs gnutls gtk infiniband iscsi io-uring
|
||||
jack jemalloc +jpeg kernel_linux
|
||||
kernel_FreeBSD lzo multipath
|
||||
ncurses nfs nls numa opengl +oss +pin-upstream-blobs
|
||||
plugins +png pulseaudio python rbd sasl +seccomp sdl sdl-image selinux
|
||||
+slirp
|
||||
smartcard snappy spice ssh static static-user systemtap test usb
|
||||
usbredir vde +vhost-net vhost-user-fs virgl virtfs +vnc vte xattr xen
|
||||
xfs +xkb zstd"
|
||||
|
||||
COMMON_TARGETS="aarch64 alpha arm cris hppa i386 m68k microblaze microblazeel
|
||||
mips mips64 mips64el mipsel nios2 or1k ppc ppc64 riscv32 riscv64 s390x
|
||||
sh4 sh4eb sparc sparc64 x86_64 xtensa xtensaeb"
|
||||
IUSE_SOFTMMU_TARGETS="${COMMON_TARGETS}
|
||||
avr lm32 moxie rx tricore unicore32"
|
||||
IUSE_USER_TARGETS="${COMMON_TARGETS}
|
||||
aarch64_be armeb mipsn32 mipsn32el ppc64abi32 ppc64le sparc32plus
|
||||
tilegx"
|
||||
|
||||
use_softmmu_targets=$(printf ' qemu_softmmu_targets_%s' ${IUSE_SOFTMMU_TARGETS})
|
||||
use_user_targets=$(printf ' qemu_user_targets_%s' ${IUSE_USER_TARGETS})
|
||||
IUSE+=" ${use_softmmu_targets} ${use_user_targets}"
|
||||
|
||||
RESTRICT="!test? ( test )"
|
||||
# Allow no targets to be built so that people can get a tools-only build.
|
||||
# Block USE flag configurations known to not work.
|
||||
REQUIRED_USE="${PYTHON_REQUIRED_USE}
|
||||
qemu_softmmu_targets_arm? ( fdt )
|
||||
qemu_softmmu_targets_microblaze? ( fdt )
|
||||
qemu_softmmu_targets_mips64el? ( fdt )
|
||||
qemu_softmmu_targets_ppc64? ( fdt )
|
||||
qemu_softmmu_targets_ppc? ( fdt )
|
||||
qemu_softmmu_targets_riscv32? ( fdt )
|
||||
qemu_softmmu_targets_riscv64? ( fdt )
|
||||
static? ( static-user !alsa !gtk !jack !opengl !pulseaudio !plugins !rbd !snappy )
|
||||
static-user? ( !plugins )
|
||||
virtfs? ( caps xattr )
|
||||
vte? ( gtk )
|
||||
plugins? ( !static !static-user )
|
||||
"
|
||||
|
||||
# Dependencies required for qemu tools (qemu-nbd, qemu-img, qemu-io, ...)
|
||||
# and user/softmmu targets (qemu-*, qemu-system-*).
|
||||
#
|
||||
# Yep, you need both libcap and libcap-ng since virtfs only uses libcap.
|
||||
#
|
||||
# The attr lib isn't always linked in (although the USE flag is always
|
||||
# respected). This is because qemu supports using the C library's API
|
||||
# when available rather than always using the external library.
|
||||
ALL_DEPEND="
|
||||
>=dev-libs/glib-2.0[static-libs(+)]
|
||||
sys-libs/zlib[static-libs(+)]
|
||||
python? ( ${PYTHON_DEPS} )
|
||||
systemtap? ( dev-util/systemtap )
|
||||
xattr? ( sys-apps/attr[static-libs(+)] )"
|
||||
|
||||
# Dependencies required for qemu tools (qemu-nbd, qemu-img, qemu-io, ...)
|
||||
# softmmu targets (qemu-system-*).
|
||||
SOFTMMU_TOOLS_DEPEND="
|
||||
dev-libs/libxml2[static-libs(+)]
|
||||
xkb? ( x11-libs/libxkbcommon[static-libs(+)] )
|
||||
>=x11-libs/pixman-0.28.0[static-libs(+)]
|
||||
accessibility? (
|
||||
app-accessibility/brltty[api]
|
||||
app-accessibility/brltty[static-libs(+)]
|
||||
)
|
||||
aio? ( dev-libs/libaio[static-libs(+)] )
|
||||
alsa? ( >=media-libs/alsa-lib-1.0.13 )
|
||||
bzip2? ( app-arch/bzip2[static-libs(+)] )
|
||||
capstone? ( dev-libs/capstone:= )
|
||||
caps? ( sys-libs/libcap-ng[static-libs(+)] )
|
||||
curl? ( >=net-misc/curl-7.15.4[static-libs(+)] )
|
||||
fdt? ( >=sys-apps/dtc-1.5.0[static-libs(+)] )
|
||||
glusterfs? ( >=sys-cluster/glusterfs-3.4.0[static-libs(+)] )
|
||||
gnutls? (
|
||||
dev-libs/nettle:=[static-libs(+)]
|
||||
>=net-libs/gnutls-3.0:=[static-libs(+)]
|
||||
)
|
||||
gtk? (
|
||||
x11-libs/gtk+:3
|
||||
vte? ( x11-libs/vte:2.91 )
|
||||
)
|
||||
infiniband? (
|
||||
sys-fabric/libibumad:=[static-libs(+)]
|
||||
sys-fabric/libibverbs:=[static-libs(+)]
|
||||
sys-fabric/librdmacm:=[static-libs(+)]
|
||||
)
|
||||
iscsi? ( net-libs/libiscsi )
|
||||
io-uring? ( sys-libs/liburing[static-libs(+)] )
|
||||
jack? ( virtual/jack )
|
||||
jemalloc? ( dev-libs/jemalloc )
|
||||
jpeg? ( virtual/jpeg:0=[static-libs(+)] )
|
||||
lzo? ( dev-libs/lzo:2[static-libs(+)] )
|
||||
multipath? ( sys-fs/multipath-tools )
|
||||
ncurses? (
|
||||
sys-libs/ncurses:0=[unicode]
|
||||
sys-libs/ncurses:0=[static-libs(+)]
|
||||
)
|
||||
nfs? ( >=net-fs/libnfs-1.9.3:=[static-libs(+)] )
|
||||
numa? ( sys-process/numactl[static-libs(+)] )
|
||||
opengl? (
|
||||
virtual/opengl
|
||||
media-libs/libepoxy[static-libs(+)]
|
||||
media-libs/mesa[static-libs(+)]
|
||||
media-libs/mesa[egl,gbm]
|
||||
)
|
||||
png? ( media-libs/libpng:0=[static-libs(+)] )
|
||||
pulseaudio? ( media-sound/pulseaudio )
|
||||
rbd? ( sys-cluster/ceph )
|
||||
sasl? ( dev-libs/cyrus-sasl[static-libs(+)] )
|
||||
sdl? (
|
||||
media-libs/libsdl2[video]
|
||||
media-libs/libsdl2[static-libs(+)]
|
||||
)
|
||||
sdl-image? ( media-libs/sdl2-image[static-libs(+)] )
|
||||
seccomp? ( >=sys-libs/libseccomp-2.1.0[static-libs(+)] )
|
||||
slirp? ( net-libs/libslirp[static-libs(+)] )
|
||||
smartcard? ( >=app-emulation/libcacard-2.5.0[static-libs(+)] )
|
||||
snappy? ( app-arch/snappy:= )
|
||||
spice? (
|
||||
>=app-emulation/spice-protocol-0.12.3
|
||||
>=app-emulation/spice-0.12.0[static-libs(+)]
|
||||
)
|
||||
ssh? ( >=net-libs/libssh-0.8.6[static-libs(+)] )
|
||||
usb? ( >=virtual/libusb-1-r2[static-libs(+)] )
|
||||
usbredir? ( >=sys-apps/usbredir-0.6[static-libs(+)] )
|
||||
vde? ( net-misc/vde[static-libs(+)] )
|
||||
virgl? ( media-libs/virglrenderer[static-libs(+)] )
|
||||
virtfs? ( sys-libs/libcap )
|
||||
xen? ( app-emulation/xen-tools:= )
|
||||
xfs? ( sys-fs/xfsprogs[static-libs(+)] )
|
||||
zstd? ( >=app-arch/zstd-1.4.0[static-libs(+)] )
|
||||
"
|
||||
|
||||
X86_FIRMWARE_DEPEND="
|
||||
pin-upstream-blobs? (
|
||||
~sys-firmware/edk2-ovmf-201905[binary]
|
||||
~sys-firmware/ipxe-1.0.0_p20190728[binary]
|
||||
~sys-firmware/seabios-1.12.0[binary,seavgabios]
|
||||
~sys-firmware/sgabios-0.1_pre8[binary]
|
||||
)
|
||||
!pin-upstream-blobs? (
|
||||
sys-firmware/edk2-ovmf
|
||||
sys-firmware/ipxe
|
||||
>=sys-firmware/seabios-1.10.2[seavgabios]
|
||||
sys-firmware/sgabios
|
||||
)"
|
||||
PPC64_FIRMWARE_DEPEND="
|
||||
pin-upstream-blobs? (
|
||||
~sys-firmware/seabios-1.12.0[binary,seavgabios]
|
||||
)
|
||||
!pin-upstream-blobs? (
|
||||
>=sys-firmware/seabios-1.10.2[seavgabios]
|
||||
)
|
||||
"
|
||||
|
||||
BDEPEND="
|
||||
$(python_gen_impl_dep)
|
||||
dev-lang/perl
|
||||
sys-apps/texinfo
|
||||
virtual/pkgconfig
|
||||
doc? ( dev-python/sphinx )
|
||||
gtk? ( nls? ( sys-devel/gettext ) )
|
||||
test? (
|
||||
dev-libs/glib[utils]
|
||||
sys-devel/bc
|
||||
)
|
||||
"
|
||||
CDEPEND="
|
||||
!static? (
|
||||
${ALL_DEPEND//\[static-libs(+)]}
|
||||
${SOFTMMU_TOOLS_DEPEND//\[static-libs(+)]}
|
||||
)
|
||||
qemu_softmmu_targets_i386? ( ${X86_FIRMWARE_DEPEND} )
|
||||
qemu_softmmu_targets_x86_64? ( ${X86_FIRMWARE_DEPEND} )
|
||||
qemu_softmmu_targets_ppc64? ( ${PPC64_FIRMWARE_DEPEND} )
|
||||
"
|
||||
DEPEND="${CDEPEND}
|
||||
kernel_linux? ( >=sys-kernel/linux-headers-2.6.35 )
|
||||
static? (
|
||||
${ALL_DEPEND}
|
||||
${SOFTMMU_TOOLS_DEPEND}
|
||||
)
|
||||
static-user? ( ${ALL_DEPEND} )"
|
||||
RDEPEND="${CDEPEND}
|
||||
acct-group/kvm
|
||||
selinux? ( sec-policy/selinux-qemu )"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}"/${PN}-2.11.1-capstone_include_path.patch
|
||||
"${FILESDIR}"/${PN}-4.0.0-mkdir_systemtap.patch #684902
|
||||
"${FILESDIR}"/${PN}-4.2.0-cflags.patch
|
||||
"${FILESDIR}"/${PN}-5.1.0-pixman-for-vhost-user-gpu.patch
|
||||
"${FILESDIR}"/${PN}-5.1.0-usb-oob-CVE-2020-14364.patch #743649
|
||||
)
|
||||
|
||||
QA_PREBUILT="
|
||||
usr/share/qemu/hppa-firmware.img
|
||||
usr/share/qemu/openbios-ppc
|
||||
usr/share/qemu/openbios-sparc64
|
||||
usr/share/qemu/openbios-sparc32
|
||||
usr/share/qemu/palcode-clipper
|
||||
usr/share/qemu/s390-ccw.img
|
||||
usr/share/qemu/s390-netboot.img
|
||||
usr/share/qemu/u-boot.e500"
|
||||
|
||||
QA_WX_LOAD="usr/bin/qemu-i386
|
||||
usr/bin/qemu-x86_64
|
||||
usr/bin/qemu-alpha
|
||||
usr/bin/qemu-arm
|
||||
usr/bin/qemu-cris
|
||||
usr/bin/qemu-m68k
|
||||
usr/bin/qemu-microblaze
|
||||
usr/bin/qemu-microblazeel
|
||||
usr/bin/qemu-mips
|
||||
usr/bin/qemu-mipsel
|
||||
usr/bin/qemu-or1k
|
||||
usr/bin/qemu-ppc
|
||||
usr/bin/qemu-ppc64
|
||||
usr/bin/qemu-ppc64abi32
|
||||
usr/bin/qemu-sh4
|
||||
usr/bin/qemu-sh4eb
|
||||
usr/bin/qemu-sparc
|
||||
usr/bin/qemu-sparc64
|
||||
usr/bin/qemu-armeb
|
||||
usr/bin/qemu-sparc32plus
|
||||
usr/bin/qemu-s390x
|
||||
usr/bin/qemu-unicore32"
|
||||
|
||||
DOC_CONTENTS="If you don't have kvm compiled into the kernel, make sure you have the
|
||||
kernel module loaded before running kvm. The easiest way to ensure that the
|
||||
kernel module is loaded is to load it on boot.
|
||||
For AMD CPUs the module is called 'kvm-amd'.
|
||||
For Intel CPUs the module is called 'kvm-intel'.
|
||||
Please review /etc/conf.d/modules for how to load these.
|
||||
|
||||
Make sure your user is in the 'kvm' group. Just run
|
||||
$ gpasswd -a <USER> kvm
|
||||
then have <USER> re-login.
|
||||
|
||||
For brand new installs, the default permissions on /dev/kvm might not let
|
||||
you access it. You can tell udev to reset ownership/perms:
|
||||
$ udevadm trigger -c add /dev/kvm
|
||||
|
||||
If you want to register binfmt handlers for qemu user targets:
|
||||
For openrc:
|
||||
# rc-update add qemu-binfmt
|
||||
For systemd:
|
||||
# ln -s /usr/share/qemu/binfmt.d/qemu.conf /etc/binfmt.d/qemu.conf"
|
||||
|
||||
pkg_pretend() {
|
||||
if use kernel_linux && kernel_is lt 2 6 25; then
|
||||
eerror "This version of KVM requires a host kernel of 2.6.25 or higher."
|
||||
elif use kernel_linux; then
|
||||
if ! linux_config_exists; then
|
||||
eerror "Unable to check your kernel for KVM support"
|
||||
else
|
||||
CONFIG_CHECK="~KVM ~TUN ~BRIDGE"
|
||||
ERROR_KVM="You must enable KVM in your kernel to continue"
|
||||
ERROR_KVM_AMD="If you have an AMD CPU, you must enable KVM_AMD in"
|
||||
ERROR_KVM_AMD+=" your kernel configuration."
|
||||
ERROR_KVM_INTEL="If you have an Intel CPU, you must enable"
|
||||
ERROR_KVM_INTEL+=" KVM_INTEL in your kernel configuration."
|
||||
ERROR_TUN="You will need the Universal TUN/TAP driver compiled"
|
||||
ERROR_TUN+=" into your kernel or loaded as a module to use the"
|
||||
ERROR_TUN+=" virtual network device if using -net tap."
|
||||
ERROR_BRIDGE="You will also need support for 802.1d"
|
||||
ERROR_BRIDGE+=" Ethernet Bridging for some network configurations."
|
||||
use vhost-net && CONFIG_CHECK+=" ~VHOST_NET"
|
||||
ERROR_VHOST_NET="You must enable VHOST_NET to have vhost-net"
|
||||
ERROR_VHOST_NET+=" support"
|
||||
|
||||
if use amd64 || use x86 || use amd64-linux || use x86-linux; then
|
||||
if grep -q AuthenticAMD /proc/cpuinfo; then
|
||||
CONFIG_CHECK+=" ~KVM_AMD"
|
||||
elif grep -q GenuineIntel /proc/cpuinfo; then
|
||||
CONFIG_CHECK+=" ~KVM_INTEL"
|
||||
fi
|
||||
fi
|
||||
|
||||
use python && CONFIG_CHECK+=" ~DEBUG_FS"
|
||||
ERROR_DEBUG_FS="debugFS support required for kvm_stat"
|
||||
|
||||
# Now do the actual checks setup above
|
||||
check_extra_config
|
||||
fi
|
||||
fi
|
||||
|
||||
if grep -qs '/usr/bin/qemu-kvm' "${EROOT}"/etc/libvirt/qemu/*.xml; then
|
||||
eerror "The kvm/qemu-kvm wrappers no longer exist, but your libvirt"
|
||||
eerror "instances are still pointing to it. Please update your"
|
||||
eerror "configs in /etc/libvirt/qemu/ to use the -enable-kvm flag"
|
||||
eerror "and the right system binary (e.g. qemu-system-x86_64)."
|
||||
die "update your virt configs to not use qemu-kvm"
|
||||
fi
|
||||
}
|
||||
|
||||
# Sanity check to make sure target lists are kept up-to-date.
|
||||
check_targets() {
|
||||
local var=$1 mak=$2
|
||||
local detected sorted
|
||||
|
||||
pushd "${S}"/default-configs >/dev/null || die
|
||||
|
||||
# Force C locale until glibc is updated. #564936
|
||||
detected=$(echo $(printf '%s\n' *-${mak}.mak | sed "s:-${mak}.mak::" | LC_COLLATE=C sort -u))
|
||||
sorted=$(echo $(printf '%s\n' ${!var} | LC_COLLATE=C sort -u))
|
||||
if [[ ${sorted} != "${detected}" ]] ; then
|
||||
eerror "The ebuild needs to be kept in sync."
|
||||
eerror "${var}: ${sorted}"
|
||||
eerror "$(printf '%-*s' ${#var} configure): ${detected}"
|
||||
die "sync ${var} to the list of targets"
|
||||
fi
|
||||
|
||||
popd >/dev/null
|
||||
}
|
||||
|
||||
handle_locales() {
|
||||
# Make sure locale list is kept up-to-date.
|
||||
local detected sorted
|
||||
detected=$(echo $(cd po && printf '%s\n' *.po | grep -v messages.po | sed 's:.po$::' | sort -u))
|
||||
sorted=$(echo $(printf '%s\n' ${PLOCALES} | sort -u))
|
||||
if [[ ${sorted} != "${detected}" ]] ; then
|
||||
eerror "The ebuild needs to be kept in sync."
|
||||
eerror "PLOCALES: ${sorted}"
|
||||
eerror " po/*.po: ${detected}"
|
||||
die "sync PLOCALES"
|
||||
fi
|
||||
|
||||
# Deal with selective install of locales.
|
||||
if use nls ; then
|
||||
# Delete locales the user does not want. #577814
|
||||
rm_loc() { rm po/$1.po || die; }
|
||||
l10n_for_each_disabled_locale_do rm_loc
|
||||
else
|
||||
# Cheap hack to disable gettext .mo generation.
|
||||
rm -f po/*.po
|
||||
fi
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
check_targets IUSE_SOFTMMU_TARGETS softmmu
|
||||
check_targets IUSE_USER_TARGETS linux-user
|
||||
|
||||
default
|
||||
|
||||
# Use correct toolchain to fix cross-compiling
|
||||
tc-export AR AS LD NM OBJCOPY PKG_CONFIG RANLIB
|
||||
export WINDRES=${CHOST}-windres
|
||||
|
||||
# Verbose builds
|
||||
MAKEOPTS+=" V=1"
|
||||
|
||||
# Run after we've applied all patches.
|
||||
handle_locales
|
||||
|
||||
# Remove bundled copy of libfdt
|
||||
rm -r dtc || die
|
||||
}
|
||||
|
||||
##
|
||||
# configures qemu based on the build directory and the build type
|
||||
# we are using.
|
||||
#
|
||||
qemu_src_configure() {
|
||||
debug-print-function ${FUNCNAME} "$@"
|
||||
|
||||
local buildtype=$1
|
||||
local builddir="${S}/${buildtype}-build"
|
||||
|
||||
mkdir "${builddir}"
|
||||
|
||||
local conf_opts=(
|
||||
--prefix=/usr
|
||||
--sysconfdir=/etc
|
||||
--bindir=/usr/bin
|
||||
--libdir=/usr/$(get_libdir)
|
||||
--datadir=/usr/share
|
||||
--docdir=/usr/share/doc/${PF}/html
|
||||
--mandir=/usr/share/man
|
||||
--with-confsuffix=/qemu
|
||||
--localstatedir=/var
|
||||
--disable-bsd-user
|
||||
--disable-containers # bug #732972
|
||||
--disable-guest-agent
|
||||
--disable-strip
|
||||
--tls-priority="@QEMU,NORMAL" # bug #747928
|
||||
|
||||
# bug #746752: TCG interpreter has a few limitations:
|
||||
# - it does not support FPU
|
||||
# - it's generally slower on non-self-modifying code
|
||||
# It's advantage is support for host architectures
|
||||
# where native codegeneration is not implemented.
|
||||
# Gentoo has qemu keyworded only on targets with
|
||||
# native code generation available. Avoid the interpreter.
|
||||
--disable-tcg-interpreter
|
||||
|
||||
--disable-werror
|
||||
# We support gnutls/nettle for crypto operations. It is possible
|
||||
# to use gcrypt when gnutls/nettle are disabled (but not when they
|
||||
# are enabled), but it's not really worth the hassle. Disable it
|
||||
# all the time to avoid automatically detecting it. #568856
|
||||
--disable-gcrypt
|
||||
--python="${PYTHON}"
|
||||
--cc="$(tc-getCC)"
|
||||
--cxx="$(tc-getCXX)"
|
||||
--host-cc="$(tc-getBUILD_CC)"
|
||||
$(use_enable debug debug-info)
|
||||
$(use_enable debug debug-tcg)
|
||||
$(use_enable doc docs)
|
||||
$(use_enable plugins)
|
||||
$(use_enable xattr attr)
|
||||
)
|
||||
|
||||
# Disable options not used by user targets. This simplifies building
|
||||
# static user targets (USE=static-user) considerably.
|
||||
conf_notuser() {
|
||||
if [[ ${buildtype} == "user" ]] ; then
|
||||
echo "--disable-${2:-$1}"
|
||||
else
|
||||
use_enable "$@"
|
||||
fi
|
||||
}
|
||||
conf_opts+=(
|
||||
$(conf_notuser accessibility brlapi)
|
||||
$(conf_notuser aio linux-aio)
|
||||
$(conf_notuser bzip2)
|
||||
$(conf_notuser capstone)
|
||||
$(conf_notuser caps cap-ng)
|
||||
$(conf_notuser curl)
|
||||
$(conf_notuser fdt)
|
||||
$(conf_notuser glusterfs)
|
||||
$(conf_notuser gnutls)
|
||||
$(conf_notuser gnutls nettle)
|
||||
$(conf_notuser gtk)
|
||||
$(conf_notuser infiniband rdma)
|
||||
$(conf_notuser iscsi libiscsi)
|
||||
$(conf_notuser io-uring linux-io-uring)
|
||||
$(conf_notuser jemalloc jemalloc)
|
||||
$(conf_notuser jpeg vnc-jpeg)
|
||||
$(conf_notuser kernel_linux kvm)
|
||||
$(conf_notuser lzo)
|
||||
$(conf_notuser multipath mpath)
|
||||
$(conf_notuser ncurses curses)
|
||||
$(conf_notuser nfs libnfs)
|
||||
$(conf_notuser numa)
|
||||
$(conf_notuser opengl)
|
||||
$(conf_notuser png vnc-png)
|
||||
$(conf_notuser rbd)
|
||||
$(conf_notuser sasl vnc-sasl)
|
||||
$(conf_notuser sdl)
|
||||
$(conf_notuser sdl-image)
|
||||
$(conf_notuser seccomp)
|
||||
$(conf_notuser slirp slirp system)
|
||||
$(conf_notuser smartcard)
|
||||
$(conf_notuser snappy)
|
||||
$(conf_notuser spice)
|
||||
$(conf_notuser ssh libssh)
|
||||
$(conf_notuser usb libusb)
|
||||
$(conf_notuser usbredir usb-redir)
|
||||
$(conf_notuser vde)
|
||||
$(conf_notuser vhost-net)
|
||||
$(conf_notuser vhost-user-fs)
|
||||
$(conf_notuser virgl virglrenderer)
|
||||
$(conf_notuser virtfs)
|
||||
$(conf_notuser vnc)
|
||||
$(conf_notuser vte)
|
||||
$(conf_notuser xen)
|
||||
$(conf_notuser xen xen-pci-passthrough)
|
||||
$(conf_notuser xfs xfsctl)
|
||||
$(conf_notuser xkb xkbcommon)
|
||||
$(conf_notuser zstd)
|
||||
)
|
||||
|
||||
if [[ ${buildtype} == "user" ]] ; then
|
||||
conf_opts+=( --disable-libxml2 )
|
||||
else
|
||||
conf_opts+=( --enable-libxml2 )
|
||||
fi
|
||||
|
||||
if [[ ! ${buildtype} == "user" ]] ; then
|
||||
# audio options
|
||||
local audio_opts=(
|
||||
# Note: backend order matters here: #716202
|
||||
# We iterate from higher-level to lower level.
|
||||
$(usex pulseaudio pa "")
|
||||
$(usev jack)
|
||||
$(usev sdl)
|
||||
$(usev alsa)
|
||||
$(usev oss)
|
||||
)
|
||||
conf_opts+=(
|
||||
--audio-drv-list=$(printf "%s," "${audio_opts[@]}")
|
||||
)
|
||||
fi
|
||||
|
||||
case ${buildtype} in
|
||||
user)
|
||||
conf_opts+=(
|
||||
--enable-linux-user
|
||||
--disable-system
|
||||
--disable-blobs
|
||||
--disable-tools
|
||||
)
|
||||
local static_flag="static-user"
|
||||
;;
|
||||
softmmu)
|
||||
conf_opts+=(
|
||||
--disable-linux-user
|
||||
--enable-system
|
||||
--disable-tools
|
||||
)
|
||||
local static_flag="static"
|
||||
;;
|
||||
tools)
|
||||
conf_opts+=(
|
||||
--disable-linux-user
|
||||
--disable-system
|
||||
--disable-blobs
|
||||
--enable-tools
|
||||
)
|
||||
local static_flag="static"
|
||||
;;
|
||||
esac
|
||||
|
||||
local targets="${buildtype}_targets"
|
||||
[[ -n ${targets} ]] && conf_opts+=( --target-list="${!targets}" )
|
||||
|
||||
# Add support for SystemTAP
|
||||
use systemtap && conf_opts+=( --enable-trace-backend=dtrace )
|
||||
|
||||
# We always want to attempt to build with PIE support as it results
|
||||
# in a more secure binary. But it doesn't work with static or if
|
||||
# the current GCC doesn't have PIE support.
|
||||
if use ${static_flag}; then
|
||||
conf_opts+=( --static --disable-pie )
|
||||
else
|
||||
tc-enables-pie && conf_opts+=( --enable-pie )
|
||||
fi
|
||||
|
||||
echo "../configure ${conf_opts[*]}"
|
||||
cd "${builddir}"
|
||||
../configure "${conf_opts[@]}" || die "configure failed"
|
||||
|
||||
# FreeBSD's kernel does not support QEMU assigning/grabbing
|
||||
# host USB devices yet
|
||||
use kernel_FreeBSD && \
|
||||
sed -i -E -e "s|^(HOST_USB=)bsd|\1stub|" "${S}"/config-host.mak
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
local target
|
||||
|
||||
python_setup
|
||||
|
||||
softmmu_targets= softmmu_bins=()
|
||||
user_targets= user_bins=()
|
||||
|
||||
for target in ${IUSE_SOFTMMU_TARGETS} ; do
|
||||
if use "qemu_softmmu_targets_${target}"; then
|
||||
softmmu_targets+=",${target}-softmmu"
|
||||
softmmu_bins+=( "qemu-system-${target}" )
|
||||
fi
|
||||
done
|
||||
|
||||
for target in ${IUSE_USER_TARGETS} ; do
|
||||
if use "qemu_user_targets_${target}"; then
|
||||
user_targets+=",${target}-linux-user"
|
||||
user_bins+=( "qemu-${target}" )
|
||||
fi
|
||||
done
|
||||
|
||||
softmmu_targets=${softmmu_targets#,}
|
||||
user_targets=${user_targets#,}
|
||||
|
||||
[[ -n ${softmmu_targets} ]] && qemu_src_configure "softmmu"
|
||||
[[ -n ${user_targets} ]] && qemu_src_configure "user"
|
||||
qemu_src_configure "tools"
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
if [[ -n ${user_targets} ]]; then
|
||||
cd "${S}/user-build"
|
||||
default
|
||||
fi
|
||||
|
||||
if [[ -n ${softmmu_targets} ]]; then
|
||||
cd "${S}/softmmu-build"
|
||||
default
|
||||
fi
|
||||
|
||||
cd "${S}/tools-build"
|
||||
default
|
||||
}
|
||||
|
||||
src_test() {
|
||||
if [[ -n ${softmmu_targets} ]]; then
|
||||
cd "${S}/softmmu-build"
|
||||
pax-mark m */qemu-system-* #515550
|
||||
emake check
|
||||
fi
|
||||
}
|
||||
|
||||
qemu_python_install() {
|
||||
python_domodule "${S}/python/qemu"
|
||||
|
||||
python_doscript "${S}/scripts/kvm/vmxcap"
|
||||
python_doscript "${S}/scripts/qmp/qmp-shell"
|
||||
python_doscript "${S}/scripts/qmp/qemu-ga-client"
|
||||
}
|
||||
|
||||
# Generate binfmt support files.
|
||||
# - /etc/init.d/qemu-binfmt script which registers the user handlers (openrc)
|
||||
# - /usr/share/qemu/binfmt.d/qemu.conf (for use with systemd-binfmt)
|
||||
generate_initd() {
|
||||
local out="${T}/qemu-binfmt"
|
||||
local out_systemd="${T}/qemu.conf"
|
||||
local d="${T}/binfmt.d"
|
||||
|
||||
einfo "Generating qemu binfmt scripts and configuration files"
|
||||
|
||||
# Generate the debian fragments first.
|
||||
mkdir -p "${d}"
|
||||
"${S}"/scripts/qemu-binfmt-conf.sh \
|
||||
--debian \
|
||||
--exportdir "${d}" \
|
||||
--qemu-path "${EPREFIX}/usr/bin" \
|
||||
|| die
|
||||
# Then turn the fragments into a shell script we can source.
|
||||
sed -E -i \
|
||||
-e 's:^([^ ]+) (.*)$:\1="\2":' \
|
||||
"${d}"/* || die
|
||||
|
||||
# Generate the init.d script by assembling the fragments from above.
|
||||
local f qcpu package interpreter magic mask
|
||||
cat "${FILESDIR}"/qemu-binfmt.initd.head >"${out}" || die
|
||||
for f in "${d}"/qemu-* ; do
|
||||
source "${f}"
|
||||
|
||||
# Normalize the cpu logic like we do in the init.d for the native cpu.
|
||||
qcpu=${package#qemu-}
|
||||
case ${qcpu} in
|
||||
arm*) qcpu="arm";;
|
||||
mips*) qcpu="mips";;
|
||||
ppc*) qcpu="ppc";;
|
||||
s390*) qcpu="s390";;
|
||||
sh*) qcpu="sh";;
|
||||
sparc*) qcpu="sparc";;
|
||||
esac
|
||||
|
||||
# we use 'printf' here to be portable across 'sh'
|
||||
# implementations: #679168
|
||||
cat <<EOF >>"${out}"
|
||||
if [ "\${cpu}" != "${qcpu}" -a -x "${interpreter}" ] ; then
|
||||
printf '%s\n' ':${package}:M::${magic}:${mask}:${interpreter}:'"\${QEMU_BINFMT_FLAGS}" >/proc/sys/fs/binfmt_misc/register
|
||||
fi
|
||||
EOF
|
||||
|
||||
echo ":${package}:M::${magic}:${mask}:${interpreter}:OC" >>"${out_systemd}"
|
||||
|
||||
done
|
||||
cat "${FILESDIR}"/qemu-binfmt.initd.tail >>"${out}" || die
|
||||
}
|
||||
|
||||
src_install() {
|
||||
if [[ -n ${user_targets} ]]; then
|
||||
cd "${S}/user-build"
|
||||
emake DESTDIR="${ED}" install
|
||||
|
||||
# Install binfmt handler init script for user targets.
|
||||
generate_initd
|
||||
doinitd "${T}/qemu-binfmt"
|
||||
|
||||
# Install binfmt/qemu.conf.
|
||||
insinto "/usr/share/qemu/binfmt.d"
|
||||
doins "${T}/qemu.conf"
|
||||
fi
|
||||
|
||||
if [[ -n ${softmmu_targets} ]]; then
|
||||
cd "${S}/softmmu-build"
|
||||
emake DESTDIR="${ED}" install
|
||||
|
||||
# This might not exist if the test failed. #512010
|
||||
[[ -e check-report.html ]] && dodoc check-report.html
|
||||
|
||||
if use kernel_linux; then
|
||||
udev_newrules "${FILESDIR}"/65-kvm.rules-r1 65-kvm.rules
|
||||
fi
|
||||
|
||||
if use python; then
|
||||
python_foreach_impl qemu_python_install
|
||||
fi
|
||||
fi
|
||||
|
||||
cd "${S}/tools-build"
|
||||
emake DESTDIR="${ED}" install
|
||||
|
||||
# Disable mprotect on the qemu binaries as they use JITs to be fast #459348
|
||||
pushd "${ED}"/usr/bin >/dev/null
|
||||
pax-mark mr "${softmmu_bins[@]}" "${user_bins[@]}" # bug 575594
|
||||
popd >/dev/null
|
||||
|
||||
# Install config file example for qemu-bridge-helper
|
||||
insinto "/etc/qemu"
|
||||
doins "${FILESDIR}/bridge.conf"
|
||||
|
||||
cd "${S}"
|
||||
dodoc Changelog MAINTAINERS docs/specs/pci-ids.txt
|
||||
newdoc pc-bios/README README.pc-bios
|
||||
|
||||
# Disallow stripping of prebuilt firmware files.
|
||||
dostrip -x ${QA_PREBUILT}
|
||||
|
||||
if [[ -n ${softmmu_targets} ]]; then
|
||||
# Remove SeaBIOS since we're using the SeaBIOS packaged one
|
||||
rm "${ED}/usr/share/qemu/bios.bin"
|
||||
rm "${ED}/usr/share/qemu/bios-256k.bin"
|
||||
if use qemu_softmmu_targets_x86_64 || use qemu_softmmu_targets_i386; then
|
||||
dosym ../seabios/bios.bin /usr/share/qemu/bios.bin
|
||||
dosym ../seabios/bios-256k.bin /usr/share/qemu/bios-256k.bin
|
||||
fi
|
||||
|
||||
# Remove vgabios since we're using the seavgabios packaged one
|
||||
rm "${ED}/usr/share/qemu/vgabios.bin"
|
||||
rm "${ED}/usr/share/qemu/vgabios-cirrus.bin"
|
||||
rm "${ED}/usr/share/qemu/vgabios-qxl.bin"
|
||||
rm "${ED}/usr/share/qemu/vgabios-stdvga.bin"
|
||||
rm "${ED}/usr/share/qemu/vgabios-virtio.bin"
|
||||
rm "${ED}/usr/share/qemu/vgabios-vmware.bin"
|
||||
# PPC64 loads vgabios-stdvga
|
||||
if use qemu_softmmu_targets_x86_64 || use qemu_softmmu_targets_i386 || use qemu_softmmu_targets_ppc64; then
|
||||
dosym ../seavgabios/vgabios-isavga.bin /usr/share/qemu/vgabios.bin
|
||||
dosym ../seavgabios/vgabios-cirrus.bin /usr/share/qemu/vgabios-cirrus.bin
|
||||
dosym ../seavgabios/vgabios-qxl.bin /usr/share/qemu/vgabios-qxl.bin
|
||||
dosym ../seavgabios/vgabios-stdvga.bin /usr/share/qemu/vgabios-stdvga.bin
|
||||
dosym ../seavgabios/vgabios-virtio.bin /usr/share/qemu/vgabios-virtio.bin
|
||||
dosym ../seavgabios/vgabios-vmware.bin /usr/share/qemu/vgabios-vmware.bin
|
||||
fi
|
||||
|
||||
# Remove sgabios since we're using the sgabios packaged one
|
||||
rm "${ED}/usr/share/qemu/sgabios.bin"
|
||||
if use qemu_softmmu_targets_x86_64 || use qemu_softmmu_targets_i386; then
|
||||
dosym ../sgabios/sgabios.bin /usr/share/qemu/sgabios.bin
|
||||
fi
|
||||
|
||||
# Remove iPXE since we're using the iPXE packaged one
|
||||
rm "${ED}"/usr/share/qemu/pxe-*.rom
|
||||
if use qemu_softmmu_targets_x86_64 || use qemu_softmmu_targets_i386; then
|
||||
dosym ../ipxe/8086100e.rom /usr/share/qemu/pxe-e1000.rom
|
||||
dosym ../ipxe/80861209.rom /usr/share/qemu/pxe-eepro100.rom
|
||||
dosym ../ipxe/10500940.rom /usr/share/qemu/pxe-ne2k_pci.rom
|
||||
dosym ../ipxe/10222000.rom /usr/share/qemu/pxe-pcnet.rom
|
||||
dosym ../ipxe/10ec8139.rom /usr/share/qemu/pxe-rtl8139.rom
|
||||
dosym ../ipxe/1af41000.rom /usr/share/qemu/pxe-virtio.rom
|
||||
fi
|
||||
fi
|
||||
|
||||
DISABLE_AUTOFORMATTING=true
|
||||
readme.gentoo_create_doc
|
||||
}
|
||||
|
||||
firmware_abi_change() {
|
||||
local pv
|
||||
for pv in ${REPLACING_VERSIONS}; do
|
||||
if ver_test $pv -lt ${FIRMWARE_ABI_VERSION}; then
|
||||
return 0
|
||||
fi
|
||||
done
|
||||
return 1
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
if [[ -n ${softmmu_targets} ]] && use kernel_linux; then
|
||||
udev_reload
|
||||
fi
|
||||
|
||||
xdg_icon_cache_update
|
||||
|
||||
[[ -z ${EPREFIX} ]] && [[ -f ${EROOT}/usr/libexec/qemu-bridge-helper ]] && \
|
||||
fcaps cap_net_admin ${EROOT}/usr/libexec/qemu-bridge-helper
|
||||
|
||||
DISABLE_AUTOFORMATTING=true
|
||||
readme.gentoo_print_elog
|
||||
|
||||
if use pin-upstream-blobs && firmware_abi_change; then
|
||||
ewarn "This version of qemu pins new versions of firmware blobs:"
|
||||
ewarn " $(best_version sys-firmware/edk2-ovmf)"
|
||||
ewarn " $(best_version sys-firmware/ipxe)"
|
||||
ewarn " $(best_version sys-firmware/seabios)"
|
||||
ewarn " $(best_version sys-firmware/sgabios)"
|
||||
ewarn "This might break resume of hibernated guests (started with a different"
|
||||
ewarn "firmware version) and live migration to/from qemu versions with different"
|
||||
ewarn "firmware. Please (cold) restart all running guests. For functional"
|
||||
ewarn "guest migration ensure that all"
|
||||
ewarn "hosts run at least"
|
||||
ewarn " app-emulation/qemu-${FIRMWARE_ABI_VERSION}."
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_info() {
|
||||
echo "Using:"
|
||||
echo " $(best_version app-emulation/spice-protocol)"
|
||||
echo " $(best_version sys-firmware/edk2-ovmf)"
|
||||
if has_version 'sys-firmware/edk2-ovmf[binary]'; then
|
||||
echo " USE=binary"
|
||||
else
|
||||
echo " USE=''"
|
||||
fi
|
||||
echo " $(best_version sys-firmware/ipxe)"
|
||||
echo " $(best_version sys-firmware/seabios)"
|
||||
if has_version 'sys-firmware/seabios[binary]'; then
|
||||
echo " USE=binary"
|
||||
else
|
||||
echo " USE=''"
|
||||
fi
|
||||
echo " $(best_version sys-firmware/sgabios)"
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
xdg_icon_cache_update
|
||||
}
|
Binary file not shown.
@ -1,3 +1 @@
|
||||
DIST eselect-php-0.9.4.tar.xz 49576 BLAKE2B 417956b355ffec7d7cda03dffa94e4d749a2b33a64a216c2ed8492181a5385f5219078efe6cc4d0d2d81b0fac40901c0cf07914a826484b83833542a12b47359 SHA512 2ba1dd75d4bb9611c6687ed4449f715728263538f772652aa1ac013103cf9ddf328c854326cf6da4f9b3ff2279bf99d973325520fe8b4e3ba7a76a9c3264e78e
|
||||
DIST eselect-php-0.9.5.tar.xz 49732 BLAKE2B 78c2010abcb1c9efd4d5f2f3f934365b338901a98bc8528131f2b9f564c1c3f740ab2dc2a28a0a58912e750062e61f75a7c6611c2f37019ca6525d729ffb5fd2 SHA512 55e401cb0c3ed19fed90485d62ba3deed3355503542898ff0d1b5404bd5fafb2f887df433609d4d4b28f32c0034100ea32c9e58547ef6417ea0b0f60d061d119
|
||||
DIST eselect-php-0.9.6.tar.xz 53236 BLAKE2B 38478d4792f8a527e5f519abd7765211aff8c1d132ceeba5eec70ea3b8d1f254be52564334fed3840950c2461ff4a30784b92fbb8b21cc448083617797eab1d4 SHA512 d3f14288b3493cb48717c1f27430ae8b60881e9f6f48e4b7644a4596d9fc1b9823a6af8b7101a62b28a92e3bff164b1717617a2642a5bb02e8dd46de56d4f410
|
||||
|
@ -1,44 +0,0 @@
|
||||
# Copyright 1999-2020 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=6
|
||||
|
||||
inherit systemd
|
||||
|
||||
DESCRIPTION="PHP eselect module"
|
||||
HOMEPAGE="https://gitweb.gentoo.org/proj/eselect-php.git/"
|
||||
SRC_URI="https://dev.gentoo.org/~mjo/distfiles/${P}.tar.xz"
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~mips ppc ppc64 ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
|
||||
IUSE="fpm apache2"
|
||||
|
||||
# The "DirectoryIndex" line in 70_mod_php.conf requires mod_dir.
|
||||
RDEPEND="app-admin/eselect
|
||||
apache2? ( www-servers/apache[apache2_modules_dir] )"
|
||||
|
||||
src_configure() {
|
||||
# We expect localstatedir to be "var"ish, not "var/lib"ish, because
|
||||
# that's what PHP upstream expects. See for example the FPM
|
||||
# configuration where they put logs in @localstatedir@/log.
|
||||
#
|
||||
# The libdir is passed explicitly in case the /usr/lib symlink
|
||||
# is not present (bug 624528).
|
||||
econf --libdir="${EPREFIX}/usr/$(get_libdir)" \
|
||||
--localstatedir="${EPREFIX}/var" \
|
||||
--with-piddir="${EPREFIX}/run" \
|
||||
$(use_enable apache2) \
|
||||
$(use_enable fpm)
|
||||
}
|
||||
|
||||
src_install() {
|
||||
default
|
||||
|
||||
if use fpm ; then
|
||||
systemd_dotmpfilesd "${FILESDIR}/php-fpm.conf"
|
||||
sed -e "s,@libdir@,$(get_libdir),g" "${FILESDIR}/php-fpm-launcher-r3" > "${T}"/php-fpm-launcher || die
|
||||
exeinto /usr/libexec
|
||||
doexe "${T}"/php-fpm-launcher
|
||||
fi
|
||||
}
|
@ -1,44 +0,0 @@
|
||||
# Copyright 1999-2020 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=6
|
||||
|
||||
inherit systemd
|
||||
|
||||
DESCRIPTION="PHP eselect module"
|
||||
HOMEPAGE="https://gitweb.gentoo.org/proj/eselect-php.git/"
|
||||
SRC_URI="https://dev.gentoo.org/~mjo/distfiles/${P}.tar.xz"
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
|
||||
IUSE="fpm apache2"
|
||||
|
||||
# The "DirectoryIndex" line in 70_mod_php.conf requires mod_dir.
|
||||
RDEPEND="app-admin/eselect
|
||||
apache2? ( www-servers/apache[apache2_modules_dir] )"
|
||||
|
||||
src_configure() {
|
||||
# We expect localstatedir to be "var"ish, not "var/lib"ish, because
|
||||
# that's what PHP upstream expects. See for example the FPM
|
||||
# configuration where they put logs in @localstatedir@/log.
|
||||
#
|
||||
# The libdir is passed explicitly in case the /usr/lib symlink
|
||||
# is not present (bug 624528).
|
||||
econf --libdir="${EPREFIX}/usr/$(get_libdir)" \
|
||||
--localstatedir="${EPREFIX}/var" \
|
||||
--with-piddir="${EPREFIX}/run" \
|
||||
$(use_enable apache2) \
|
||||
$(use_enable fpm)
|
||||
}
|
||||
|
||||
src_install() {
|
||||
default
|
||||
|
||||
if use fpm ; then
|
||||
systemd_dotmpfilesd "${FILESDIR}/php-fpm.conf"
|
||||
sed -e "s,@libdir@,$(get_libdir),g" "${FILESDIR}/php-fpm-launcher-r3" > "${T}"/php-fpm-launcher || die
|
||||
exeinto /usr/libexec
|
||||
doexe "${T}"/php-fpm-launcher
|
||||
fi
|
||||
}
|
@ -1,7 +0,0 @@
|
||||
#!/bin/sh
|
||||
|
||||
PHPSLOT="${1}"
|
||||
[ -z "${PHPSLOT}" ] && PHPSLOT="$(eselect php show fpm)"
|
||||
shift
|
||||
|
||||
exec /usr/lib/${PHPSLOT}/bin/php-fpm "${@}"
|
@ -1,11 +0,0 @@
|
||||
#!/bin/sh
|
||||
|
||||
# If there are no arguments, then "shift" will fail (bug 626496).
|
||||
if [ $# -eq 0 ]; then
|
||||
PHP_SLOT=$(eselect php show fpm)
|
||||
else
|
||||
PHP_SLOT=$1
|
||||
shift
|
||||
fi
|
||||
|
||||
exec "/usr/@libdir@/${PHP_SLOT}/bin/php-fpm" "${@}"
|
@ -1 +0,0 @@
|
||||
d /run/php-fpm 755 root root
|
Binary file not shown.
@ -0,0 +1,86 @@
|
||||
# Copyright 1999-2020 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
inherit systemd tmpfiles
|
||||
|
||||
DESCRIPTION="Open Source, Distributed, RESTful, Search Engine"
|
||||
HOMEPAGE="https://www.elastic.co/products/elasticsearch"
|
||||
SRC_URI="x-pack? ( https://artifacts.elastic.co/downloads/${PN}/${P}-no-jdk-linux-x86_64.tar.gz )
|
||||
!x-pack? ( https://artifacts.elastic.co/downloads/${PN}/${PN}-oss-${PV}-no-jdk-linux-x86_64.tar.gz )"
|
||||
LICENSE="Apache-2.0 BSD-2 LGPL-3 MIT public-domain x-pack? ( Elastic )"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64"
|
||||
IUSE="x-pack"
|
||||
|
||||
RDEPEND="acct-group/elasticsearch
|
||||
acct-user/elasticsearch
|
||||
virtual/jre"
|
||||
|
||||
QA_PRESTRIPPED="usr/share/elasticsearch/modules/x-pack-ml/platform/linux-x86_64/\(bin\|lib\)/.*"
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
|
||||
rm LICENSE.txt NOTICE.txt || die
|
||||
rmdir logs || die
|
||||
}
|
||||
|
||||
src_install() {
|
||||
keepdir /etc/${PN}
|
||||
keepdir /etc/${PN}/scripts
|
||||
|
||||
insinto /etc/${PN}
|
||||
doins -r config/.
|
||||
rm -r config || die
|
||||
|
||||
fowners root:${PN} /etc/${PN}
|
||||
fperms 2750 /etc/${PN}
|
||||
|
||||
insinto /usr/share/${PN}
|
||||
doins -r .
|
||||
|
||||
exeinto /usr/share/${PN}/bin
|
||||
doexe "${FILESDIR}/elasticsearch-systemd-pre-exec"
|
||||
|
||||
fperms -R +x /usr/share/${PN}/bin
|
||||
|
||||
if use x-pack; then
|
||||
fperms -R +x /usr/share/${PN}/modules/x-pack-ml/platform/linux-x86_64/bin
|
||||
fi
|
||||
|
||||
keepdir /var/{lib,log}/${PN}
|
||||
fowners ${PN}:${PN} /var/{lib,log}/${PN}
|
||||
fperms 0750 /var/{lib,log}/${PN}
|
||||
dodir /usr/share/${PN}/plugins
|
||||
|
||||
insinto /etc/sysctl.d
|
||||
newins "${FILESDIR}/${PN}.sysctl.d" ${PN}.conf
|
||||
|
||||
newconfd "${FILESDIR}/${PN}.conf.3" ${PN}
|
||||
newinitd "${FILESDIR}/${PN}.init.7" ${PN}
|
||||
|
||||
systemd_install_serviced "${FILESDIR}/${PN}.service.conf"
|
||||
systemd_newunit "${FILESDIR}"/${PN}.service.3 ${PN}.service
|
||||
|
||||
newtmpfiles "${FILESDIR}"/${PN}.tmpfiles.d ${PN}.conf
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
tmpfiles_process /usr/lib/tmpfiles.d/${PN}.conf
|
||||
|
||||
elog
|
||||
elog "You may create multiple instances of ${PN} by"
|
||||
elog "symlinking the init script:"
|
||||
elog "ln -sf /etc/init.d/${PN} /etc/init.d/${PN}.instance"
|
||||
elog
|
||||
elog "Please make sure you put elasticsearch.yml, log4j2.properties and scripts"
|
||||
elog "from /etc/${PN} into the configuration directory of the instance:"
|
||||
elog "/etc/${PN}/instance"
|
||||
elog
|
||||
ewarn "Please make sure you have proper permissions on /etc/${PN}"
|
||||
ewarn "prior to keystore generation or you may experience startup fails."
|
||||
ewarn "chown root:${PN} /etc/${PN} && chmod 2750 /etc/${PN}"
|
||||
ewarn "chown root:${PN} /etc/${PN}/${PN}.keystore && chmod 0660 /etc/${PN}/${PN}.keystore"
|
||||
}
|
Binary file not shown.
@ -1,36 +1,12 @@
|
||||
DIST amd64-debug-libreoffice-6.4.3.2.tar.xz 1575837176 BLAKE2B ee243e729bbe5747a5bbdade14c95324f127db92f426a5814b2b4d3a93c373c13b75b6a229b643cb05225ff8a44425516c4450650afaae556e053ee8217a563d SHA512 429c7d0c6a8205daa2025f9ff0b40d8c40748586d8f2099327ca17f45fc3ed797716cc9c3ec6d1568ff8b36721c5ca30fe7b4f8d8df4d5fadb046162d3befc16
|
||||
DIST amd64-debug-libreoffice-6.4.6.2-r1.tar.xz 1533904268 BLAKE2B d5b4c718111a7771f1787d6151e22b3e82f4a08c8c2dd4f244a514f4d3a7204bf0cf7a415d42f8f88e806a6eec478e09328a89c91452163a32766dd40907ae6e SHA512 aedbdf669f7c390c8c1e3c675d486b87d463404cdc718ea2d3a1667348a6ee693814ac2f543246310fc10e41c7a490b7da23b3e71208768b7b7a65f06431e853
|
||||
DIST amd64-debug-libreoffice-6.4.6.2-r2.tar.xz 1533877704 BLAKE2B d0f95c497e94216c934c4c460b19dd8716e8722152586bfdf1a4231cdbc16028de84cfa73ca71e09e94978d45224cdc59b3fd4b9bcc4849abeff1b2886e4bf71 SHA512 46b3048f55f0e47b979572f48381aff9b97f0dcf8267d93533664ea91a45c749f402aeecc9eb2a9390972aa15ba22944e198895f4c5b121b23a1f473e2ad797f
|
||||
DIST amd64-debug-libreoffice-gnome-6.4.3.2.xd3 1650286 BLAKE2B 8db44dc00dee6d592109b2701168ace2433e1eae391a25ba991af247f2786000436144b554a924d2a0e65763dec90938e872c04f982a5e98ee8cdfd1aa4c7152 SHA512 b5ee4c747f083365c62f1cc606739e8d5c6724f7094c873f4cd7ce2e28ab0c72b4518d4fc19c1b2b54bba78dad85fc35be4c004bbba6d76084ea33ad5c4bb782
|
||||
DIST amd64-debug-libreoffice-gnome-6.4.6.2-r1.xd3 1567104 BLAKE2B 0d36f2d95586ad73f56bf456fb306e79964f3d1f3b6a06782e56b43af64e521855a988573862f0bdaf337fc846e30d351ae7704930356b78b0e3a2ec5fe934f7 SHA512 d02eb67080a86a35d248485deda98c10cc6c15c67a819773a8bbc934be584d706c463c9d856ee50a601f954fd68efff9e67b74f546a7a15a33afe7642d217906
|
||||
DIST amd64-debug-libreoffice-gnome-6.4.6.2-r2.xd3 1567465 BLAKE2B 7239068e9c32d58685dff3456d1c74d11092b0a5176ba5dbeba59a9bec54eee5584ee4ffb22266bc1e2854baf10057d60f73755a5e41df530b5f4cae69ff0597 SHA512 5c983a03a154a2ef3e48b65bdcd478f7f83345e9c3d4248811c0b2b98f2f4ed2d6fcb840a1862ee33911fa954371516649144e8e8e2c718f7ec1f6659ccf6b21
|
||||
DIST amd64-debug-libreoffice-gnome-java-6.4.3.2.xd3 776124041 BLAKE2B ee631608b5fa67d45320ee715b0209e1fb1aef9329a56c0258013fb5159fc8334eaddf81e8c41dce9af406f15ea2fbd806d2c7acf0b29839b713394c309804ac SHA512 81eebbe43ce848637deff115f7367e1da2136435393d98bc6583e2eba998c7e2894b555ef7db8e420aa2fb353f1dfeba54fddcac55c81de216a3721c4b524559
|
||||
DIST amd64-debug-libreoffice-gnome-java-6.4.6.2-r1.xd3 747096532 BLAKE2B 2a995d680e31169f6e56f0544210aa5320b63b845c8c718c998fa638c7b08c968ee3f67e78aa9f1775b30bd7a7d297865ebbeb6bdc42683b31e621a5b97e0726 SHA512 da65f9aea4f9d58c993a8dd734641a48af5abdf925fdfd7882986cdb31348fa511ff9c3c01c82ccf1b6a6eed7a816eb9e1bc15cfa8baff4378da1a91c9791664
|
||||
DIST amd64-debug-libreoffice-gnome-java-6.4.6.2-r2.xd3 747959737 BLAKE2B 0151ef5d689d95a3444b78f8123023508951ad106a051530b8d91efd3fa4afc3f541d97e2e50afa483725d100fe9e3efbe234990ef161f7d1821977e9491a646 SHA512 d6e4e70e00c36b473fae6718bc2687c5af3a529e21fb98de348379203d7a1c0eccee6b168e7165bc4db302a58945256c45c1fed7424f681ca524ae58683f4770
|
||||
DIST amd64-debug-libreoffice-java-6.4.3.2.xd3 774470299 BLAKE2B 5d2db389270288ad469539b8ce2ec76af2cfb2da13211b7a2a42eea49fd8eaa9aa0627a517c81a78a017ee8b0bdaa41a05cf90ab26ab4b9d4dad93cc2ad90013 SHA512 4c97eba50625489453e92c96e5efe347cb15d396fe97981bf25d97e75d6dfba6943c31663e239484f0291b65bc5c7da195de1c8620488195f0246cf69a40591a
|
||||
DIST amd64-debug-libreoffice-java-6.4.6.2-r1.xd3 745510589 BLAKE2B eca91df7afffefdac91c7222ed5b6ea2d4b5eeff0a0d35da43b34986035180267812a3ec893ff67db74d97e8708079eb33f2694f20945f2dfbbe7a94818ef646 SHA512 02eea31554031d3c50261371fb7847b5975191acdfe7fd36189a29e83675407bd465dc57dee5400a5970bb5470bddfb439a996ee17e4bb22746e009fdefc2462
|
||||
DIST amd64-debug-libreoffice-java-6.4.6.2-r2.xd3 746377573 BLAKE2B a2ee1b1f6b25e3f183948e9afb4a7ef07c7bfac003f64408c8de5607ffc61b0e4518c9b029e5732a98ad1d6840eeff4623e901825cc5a18bb95bd83bb8cc7944 SHA512 bfd37700646bb26fb8b59620edcff8152b85a97c323225899ceec0937326276eeb568be13c5264243ca79c486ee039da1476bba501957aa5885a2a2eb3ea0e20
|
||||
DIST amd64-debug-libreoffice-kde-6.4.3.2.xd3 480378879 BLAKE2B c17f97544fedd20b1e29405c592681acbd800c144ae7b2939be70b505811267981a31ad2bdb9faea0958229a6e757e7537b48757c58ec405265b8151fb6bb2d1 SHA512 16c7e0093ae26e6d7a8a1da7bd907ad12e591943c1f3fb3297057ae224b05ffc982884c29366e700e68cd84a802cf3e242d2919bde673c49b361f0df4104ffbb
|
||||
DIST amd64-debug-libreoffice-kde-6.4.6.2-r1.xd3 461579472 BLAKE2B c6d8ee75135a78f450ea5c18092313eb1e29a011eb31556c83ffb9dd162b8b08d26486ec5b259af144503a0762436ff551848731a70b4e4ae05686f5a766c081 SHA512 c9264596607d882a850375f53000549d9ea69715a729f9a842bb3a38590d0c71226c0e80a547931e25befc9c661c46bda19dcdfa713a354fee56bd6db6c9c5a8
|
||||
DIST amd64-debug-libreoffice-kde-6.4.6.2-r2.xd3 461475494 BLAKE2B c59addb14cc79422b91c0a051cf06df4fdd33279fdaeeee512db76cb8fd6224e80b485d20320b209404d8d14f679053665f23218ce7b620d8da3b20c74c72671 SHA512 dea493fae319faf8cde12c192084548bfbf55b4017d2d3d96938f5705156a5b19e8204629fe98f205488a2ff6cfd29927cbe2fbfbd27eb37adbd6b2a8a477b5c
|
||||
DIST amd64-debug-libreoffice-kde-java-6.4.3.2.xd3 783683127 BLAKE2B c0c87c05ad781507fd740e37f6f685c37daa453519d8bfe969807ff50f277eb7b5d8720ee6bb8638264313de58dc072adbbaa715549a56812d6d758203c7251c SHA512 7117a0e536a2303595d652ea41e1f5ec5d92e4ea70fadc5dd5116e2b320e156d0ac467bbf3e44e71fe89a329b6094f4776170e7cb2ebc17b9131dd6b6eac917e
|
||||
DIST amd64-debug-libreoffice-kde-java-6.4.6.2-r1.xd3 754606886 BLAKE2B 780f8844da4fbcafc32154aadf639941b8f90b7b4e7a3cacae9ff9390e818de64ff1b4f224c9ab6613ae961d033a067a3c495af53f63ae78ff26d535d7b7ee8d SHA512 71256405bb437eca0cf97d1059b5f38e4d97cc4249cc78076ea5a52429c689daeecbd1dfeb5dd64faf3458b6b9277cca6ba0c37af8f8a3048aece8bc045693cc
|
||||
DIST amd64-debug-libreoffice-kde-java-6.4.6.2-r2.xd3 755546076 BLAKE2B 4d0c2bc849793a8483d3a3a7156812f30f9b97e1add1d2d2676cf69974db88e27cf073e0844e1e05cf337d6e109d134dc1d4c6b84c7c12aa3e36cdc6184b87b4 SHA512 dfddae1f600780d088c429e6951047960036e6f31e908cdb18cc552645230b00ed0e2f6ed6be46fef815d8ff49fccf5450bc3f23b9025c8720ed30eeb78f3a57
|
||||
DIST x86-debug-libreoffice-6.4.3.2.tar.xz 1540005828 BLAKE2B 0a688eea8362ebe95adaa0d8581676fa3867e27f928e55b435046c1b498dc0c62e6d11ec82ce5cb537ac9f1154632d610d021e44c0a1ba34de67a7e4f64b2033 SHA512 e781bf4815392f11bfa0375733d285d1276e9819813e9653c2eb2610fc423b4e75af9d7887d22d029452b1146dcbed615d0767ac6bb57c26af8d0d8c5291e26e
|
||||
DIST x86-debug-libreoffice-6.4.6.2-r1.tar.xz 1497798064 BLAKE2B 3a83283ce7c1e83f99704ee07cb3489ecf03813cd6edb79fecb214da0f2e89260f018684f0397fd712d9fdca01afb46204c0171d3c928f3075ea2982796c3914 SHA512 28771a55b2f909ea1b9278b4ad48b4ee994a50eac96f9ed2227bfd77f3abc9dbbd6b993a4d01e92fb6c68b6f109f79e03d0863bb5487d7def526d7ccb8c78a36
|
||||
DIST x86-debug-libreoffice-6.4.6.2-r2.tar.xz 1497855216 BLAKE2B 3c87f75f3f3c2201b20e08a8bae5162d5d4f7a5a3a315ccb185b4cc98d3f15b13a896757a01db56855b8f384a601bbe2b8802794d83fb964b6775e7164aad627 SHA512 645e9448f419a59e7d20d6450821d72e56005a94aabe51ff3407a7a910fc648d34ae6e790e77b1e236b4f00fc404707566a46825992e4985707d4b29616707d4
|
||||
DIST x86-debug-libreoffice-gnome-6.4.3.2.xd3 1604587 BLAKE2B b08806ff2131b3fdca314d9cf994f4728a73acc92fa3e0bf36f85030907a65b9fe19ef4d4418a13ad1d97f6b07b1782bf7f104856d0f51b938f27d0e694ada44 SHA512 6e51203533eacffaf43192d69059840c00ddaa1aaa9388ed72aa233ddfb1c0898f44105a09bcc7dbf4be484c294eb8dc076f1700dddf4effcd1ac0ec7ba32f00
|
||||
DIST x86-debug-libreoffice-gnome-6.4.6.2-r1.xd3 1521155 BLAKE2B 5c00d405401d0ac5a3e2fc2e773dd46aa230fbaf43cb4037d9698681eb89bb28b712cf61963dedb5479bc1f76b520c8a7de952affb061b4bf7b8d4aec3c8109c SHA512 1a321ba047a211b66636a28fe94e6ee9adce2a4a252cb1d474095df25cb70ccdaa493a815d139d606d313a1f9d4249cbf89bc44adc0360579ff9e159079260f7
|
||||
DIST x86-debug-libreoffice-gnome-6.4.6.2-r2.xd3 1521667 BLAKE2B de0026bb04bc48122cf7dd1a2bda45cf3a744a32a665e7f8a4659a16771ffdcd1e86103633c390c9ae03bec59db89b3b38cdec420d1a214b15948e3c06cfb416 SHA512 b9af148a94e9cc988667bc6015b6b11342dfcefde30a085cfae0269e4528c6714291ddadcd8373320784fb12698504247e5d3959690613d024e422c04709410b
|
||||
DIST x86-debug-libreoffice-gnome-java-6.4.3.2.xd3 739065723 BLAKE2B f954ff41ae88631201e9a840fb503c6ea6cb0295bc6220e795b631361b3e528639a576fb5a43202a32189dd537f62877cf24a4e35fd52a30fb9579be824e8cba SHA512 50294507c95ee8d9b5887cb60b4ff32db7764cd2d858af5f4dd35bbcf38a7943a1eb8f10fe8fd6edd370a128013fb3a1ebddbd2d64d3a418b1325cf133506e2a
|
||||
DIST x86-debug-libreoffice-gnome-java-6.4.6.2-r1.xd3 722959412 BLAKE2B 7b8d1040aede095212a8bec0e4ec852cc56615f81a25cd281f343c1f294c88ef53e54fecc0f5c27421cd9ff5a791db8a563b046743b2f86454ec360308bed87b SHA512 bf59aa4d50e11f02f24fe316d77e394a2b3a9292a045c4da0eb64d22f37a44cb92e88c51de4f21ff0d81da22bbeaeecde0b0a0ffaf07ef5b25ad9d5053409fa5
|
||||
DIST x86-debug-libreoffice-gnome-java-6.4.6.2-r2.xd3 722465261 BLAKE2B 682e741bb10fb54fc50cf04530af5c3e3049f5bd1b4c5667bc9f24f85552aac47f5d6825d5d1412b8557cdf0a33612b45f5d3868b74f60586c593443253f02db SHA512 e4fe34f140aa6aea94cb7e7def6463d88f6c3ddded4af19627cee84645aa72a2f810d0474364faa3409b5e7f1a8a1394dbd3728d747b8b46e4e9d26dc902006e
|
||||
DIST x86-debug-libreoffice-java-6.4.3.2.xd3 737453940 BLAKE2B dc658db476b80d268f97307009939a3663e52038ff262dfd23805532f4b1f7c5e370e31b246a33c86269a2f121ea052f5847fa3debc7f861acf652225b14a250 SHA512 90c33969bbc078d654b8775d0048647f32091ad27afa68a3ce41777b98051c86df382758554c94f0dcee5dd024ceb177da214b0c238629a28c88ccff0bbb0a82
|
||||
DIST x86-debug-libreoffice-java-6.4.6.2-r1.xd3 721420736 BLAKE2B 5de46b0944228f98b142335ddaabcce1f2fcb67da576748382ae7b8524c0259eb026fe60b405819211ec05f9feb9b936985bb3992fe5b7c0779491e0105c72b2 SHA512 8e25d2c0b948ed09544e9e5bedbeafa0de8155423871e67eab7d01f5dc71ea85c2fa1ea684142142c2fa97b2aa37a62a8f9066cd5ffbdcc83522cc7f40ef2949
|
||||
DIST x86-debug-libreoffice-java-6.4.6.2-r2.xd3 720927677 BLAKE2B 2427221039c273774fbab8f2a697366163afb69c2699b80354cea559d82e9e28805da0c248e3e851e64792af47763700783deda6b8088e5a230e06a49038a60c SHA512 fb7e2ee5164d143ddfc7c1a45e0b61047810f4f20149705bc6a4e58babec35200803de970062ce8bebe9971a476f99a82cecc2a643cdc7dc2cc86b76905fb4c0
|
||||
DIST x86-debug-libreoffice-kde-6.4.3.2.xd3 457748753 BLAKE2B 1d0c3a4ad240a80a997db83d90ae20d70f9a4439c5a962db656fc72005a7c8e20bc129626ff040af5542cf36f22f872a6672796b9a7c7d493457b976005ac7eb SHA512 31880b33b8e056cc20eec5aa81a18b08223183a0d59590f2914eb371984e19d660df8502d3ae88b03ba11bb65e91015eabd1d6e008cc35c83e7a7124e742c211
|
||||
DIST x86-debug-libreoffice-kde-6.4.6.2-r1.xd3 441958002 BLAKE2B 38c6b052d2b71fb013217b723dde83722a3af499f2df09a959a52db4009fc111298e733c891fd015dac2f046b46ec405b6347d80eea0120a52957a84660eb8a4 SHA512 bb7ed3179763605e07f953dfaf1fddad4215f9f95d28d7492d37450a892473cb0250389eac4142f2ce5dfc778679a26aefff01cbf0f2aa0dc83095e29fa18eb7
|
||||
DIST x86-debug-libreoffice-kde-6.4.6.2-r2.xd3 442030408 BLAKE2B 414eb20169ea42e4b4ff73a502987433911fe1332e9ce26e1618791d74dd31f2f0c9b2ae27cab427ed8f959aef546eb2e63041c7c890937e0ffdc0fee650f27f SHA512 8d857d3567b50a109f13b120f2ffd6089193d78cb63c480985a3d0cc8068ff08bc7bcdd8b9255a53a808715085cda1f19d8c0b32910556106967533e92f7a974
|
||||
DIST x86-debug-libreoffice-kde-java-6.4.3.2.xd3 737345990 BLAKE2B 00c365c8e8c8b0444198bb30a5ac12e9381471ae7e90a0a9f1a26aa3fc4d34074243a69a64da94ba0cc89dd4238ce54e6b8bfb6334d2983db24fc44c26722ac1 SHA512 c787d6d6c9872dfc0b409226240270a9687205f5892a820621d019c13109048c2d01c4afb23bbbc3b4aa9c5c47fcd07a4f50f1e995f6b1536fbe0540fc2f5c5a
|
||||
DIST x86-debug-libreoffice-kde-java-6.4.6.2-r1.xd3 721203512 BLAKE2B 0c1694c4d2d2ba9bb82ba279585efcb1a4fc47c99f3d070c15b3b314e3759beba788acb4c410c5ea528f3fa4a5c5ea4beea22fb7b8b68f5a1c082088e3fa0beb SHA512 1a10f4bbb05d8f35fb78c470eac32df9c3eb5bdfb324d6f7b1a17554ab073955724371d2a14fae582ba98a562ed92b8ae4f0f68bf49638a32abafcc3b2593a91
|
||||
DIST x86-debug-libreoffice-kde-java-6.4.6.2-r2.xd3 720717402 BLAKE2B fd9c28894f274dc1be028085c3382040e4f36a49262e79d623f4c818e7c8b9dd2bf25b65f8d49914f02b93d3e61ea8758129a7f57850d559ce437d94f48dbfbc SHA512 a1e0622d6a4ff0dc05b835569c03626adee6114e8d0b25dc3739d90e0d951976df8527751c57ab65d2e79991086fc304266939f0d0d0f959a3ed5016166678f9
|
||||
|
@ -1,87 +0,0 @@
|
||||
# Copyright 1999-2020 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
BASE_PACKAGENAME="debug"
|
||||
BASE_AMD64_URI="https://tamiko.kyomu.43-1.org/distfiles/amd64-${BASE_PACKAGENAME}-"
|
||||
BASE_X86_URI="https://tamiko.kyomu.43-1.org/distfiles/x86-${BASE_PACKAGENAME}-"
|
||||
|
||||
DESCRIPTION="LibreOffice, a full office productivity suite. Binary package, debug info"
|
||||
HOMEPAGE="https://www.libreoffice.org"
|
||||
SRC_URI_AMD64="
|
||||
${BASE_AMD64_URI}libreoffice-${PVR}.tar.xz
|
||||
kde? (
|
||||
!java? ( ${BASE_AMD64_URI}libreoffice-kde-${PVR}.xd3 )
|
||||
java? ( ${BASE_AMD64_URI}libreoffice-kde-java-${PVR}.xd3 )
|
||||
)
|
||||
gnome? (
|
||||
!java? ( ${BASE_AMD64_URI}libreoffice-gnome-${PVR}.xd3 )
|
||||
java? ( ${BASE_AMD64_URI}libreoffice-gnome-java-${PVR}.xd3 )
|
||||
)
|
||||
!kde? ( !gnome? (
|
||||
java? ( ${BASE_AMD64_URI}libreoffice-java-${PVR}.xd3 )
|
||||
) )
|
||||
"
|
||||
SRC_URI_X86="
|
||||
${BASE_X86_URI}libreoffice-${PVR}.tar.xz
|
||||
kde? (
|
||||
!java? ( ${BASE_X86_URI}libreoffice-kde-${PVR}.xd3 )
|
||||
java? ( ${BASE_X86_URI}libreoffice-kde-java-${PVR}.xd3 )
|
||||
)
|
||||
gnome? (
|
||||
!java? ( ${BASE_X86_URI}libreoffice-gnome-${PVR}.xd3 )
|
||||
java? ( ${BASE_X86_URI}libreoffice-gnome-java-${PVR}.xd3 )
|
||||
)
|
||||
!kde? ( !gnome? (
|
||||
java? ( ${BASE_X86_URI}libreoffice-java-${PVR}.xd3 )
|
||||
) )
|
||||
"
|
||||
|
||||
SRC_URI="
|
||||
amd64? ( ${SRC_URI_AMD64} )
|
||||
x86? ( ${SRC_URI_X86} )
|
||||
"
|
||||
|
||||
IUSE="gnome java kde"
|
||||
LICENSE="LGPL-3"
|
||||
SLOT="0"
|
||||
KEYWORDS="-* amd64 x86"
|
||||
|
||||
RDEPEND="=app-office/${PN/-debug}-${PVR}[gnome=,java=,kde=]"
|
||||
|
||||
DEPEND="dev-util/xdelta:3"
|
||||
|
||||
RESTRICT="test strip"
|
||||
|
||||
S="${WORKDIR}"
|
||||
|
||||
QA_PREBUILT="/usr/*"
|
||||
|
||||
src_unpack() {
|
||||
einfo "Uncompressing distfile ${ARCH}-${BASE_PACKAGENAME}-libreoffice-${PVR}.tar.xz"
|
||||
xz -cd "${DISTDIR}/${ARCH}-${BASE_PACKAGENAME}-libreoffice-${PVR}.tar.xz" > "${WORKDIR}/${ARCH}-${BASE_PACKAGENAME}-libreoffice-${PVR}.tar" || die
|
||||
|
||||
local patchname
|
||||
use kde && patchname="-kde"
|
||||
use gnome && patchname="-gnome"
|
||||
use java && patchname="${patchname}-java"
|
||||
|
||||
if [[ -n "${patchname}" ]]; then
|
||||
einfo "Patching distfile ${ARCH}-${BASE_PACKAGENAME}-libreoffice-${PVR}.tar using ${ARCH}-${BASE_PACKAGENAME}-libreoffice${patchname}-${PVR}.xd3"
|
||||
xdelta3 -d -s "${WORKDIR}/${ARCH}-${BASE_PACKAGENAME}-libreoffice-${PVR}.tar" "${DISTDIR}/${ARCH}-${BASE_PACKAGENAME}-libreoffice${patchname}-${PVR}.xd3" "${WORKDIR}/tmpdist.tar" || die
|
||||
mv "${WORKDIR}/tmpdist.tar" "${WORKDIR}/${ARCH}-${BASE_PACKAGENAME}-libreoffice-${PVR}.tar" || die
|
||||
fi
|
||||
|
||||
einfo "Unpacking new ${ARCH}-${BASE_PACKAGENAME}-libreoffice-${PVR}.tar"
|
||||
unpack "./${ARCH}-${BASE_PACKAGENAME}-libreoffice-${PVR}.tar"
|
||||
}
|
||||
|
||||
src_configure() { :; }
|
||||
|
||||
src_compile() { :; }
|
||||
|
||||
src_install() {
|
||||
dodir /usr
|
||||
cp -aR "${S}"/usr/* "${ED}"/usr/ || die
|
||||
}
|
@ -1,87 +0,0 @@
|
||||
# Copyright 1999-2020 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
BASE_PACKAGENAME="debug"
|
||||
BASE_AMD64_URI="https://tamiko.kyomu.43-1.org/distfiles/amd64-${BASE_PACKAGENAME}-"
|
||||
BASE_X86_URI="https://tamiko.kyomu.43-1.org/distfiles/x86-${BASE_PACKAGENAME}-"
|
||||
|
||||
DESCRIPTION="LibreOffice, a full office productivity suite. Binary package, debug info"
|
||||
HOMEPAGE="https://www.libreoffice.org"
|
||||
SRC_URI_AMD64="
|
||||
${BASE_AMD64_URI}libreoffice-${PVR}.tar.xz
|
||||
kde? (
|
||||
!java? ( ${BASE_AMD64_URI}libreoffice-kde-${PVR}.xd3 )
|
||||
java? ( ${BASE_AMD64_URI}libreoffice-kde-java-${PVR}.xd3 )
|
||||
)
|
||||
gnome? (
|
||||
!java? ( ${BASE_AMD64_URI}libreoffice-gnome-${PVR}.xd3 )
|
||||
java? ( ${BASE_AMD64_URI}libreoffice-gnome-java-${PVR}.xd3 )
|
||||
)
|
||||
!kde? ( !gnome? (
|
||||
java? ( ${BASE_AMD64_URI}libreoffice-java-${PVR}.xd3 )
|
||||
) )
|
||||
"
|
||||
SRC_URI_X86="
|
||||
${BASE_X86_URI}libreoffice-${PVR}.tar.xz
|
||||
kde? (
|
||||
!java? ( ${BASE_X86_URI}libreoffice-kde-${PVR}.xd3 )
|
||||
java? ( ${BASE_X86_URI}libreoffice-kde-java-${PVR}.xd3 )
|
||||
)
|
||||
gnome? (
|
||||
!java? ( ${BASE_X86_URI}libreoffice-gnome-${PVR}.xd3 )
|
||||
java? ( ${BASE_X86_URI}libreoffice-gnome-java-${PVR}.xd3 )
|
||||
)
|
||||
!kde? ( !gnome? (
|
||||
java? ( ${BASE_X86_URI}libreoffice-java-${PVR}.xd3 )
|
||||
) )
|
||||
"
|
||||
|
||||
SRC_URI="
|
||||
amd64? ( ${SRC_URI_AMD64} )
|
||||
x86? ( ${SRC_URI_X86} )
|
||||
"
|
||||
|
||||
IUSE="gnome java kde"
|
||||
LICENSE="LGPL-3"
|
||||
SLOT="0"
|
||||
KEYWORDS="-* ~amd64 ~x86"
|
||||
|
||||
RDEPEND="=app-office/${PN/-debug}-${PVR}[gnome=,java=,kde=]"
|
||||
|
||||
DEPEND="dev-util/xdelta:3"
|
||||
|
||||
RESTRICT="test strip"
|
||||
|
||||
S="${WORKDIR}"
|
||||
|
||||
QA_PREBUILT="/usr/*"
|
||||
|
||||
src_unpack() {
|
||||
einfo "Uncompressing distfile ${ARCH}-${BASE_PACKAGENAME}-libreoffice-${PVR}.tar.xz"
|
||||
xz -cd "${DISTDIR}/${ARCH}-${BASE_PACKAGENAME}-libreoffice-${PVR}.tar.xz" > "${WORKDIR}/${ARCH}-${BASE_PACKAGENAME}-libreoffice-${PVR}.tar" || die
|
||||
|
||||
local patchname
|
||||
use kde && patchname="-kde"
|
||||
use gnome && patchname="-gnome"
|
||||
use java && patchname="${patchname}-java"
|
||||
|
||||
if [[ -n "${patchname}" ]]; then
|
||||
einfo "Patching distfile ${ARCH}-${BASE_PACKAGENAME}-libreoffice-${PVR}.tar using ${ARCH}-${BASE_PACKAGENAME}-libreoffice${patchname}-${PVR}.xd3"
|
||||
xdelta3 -d -s "${WORKDIR}/${ARCH}-${BASE_PACKAGENAME}-libreoffice-${PVR}.tar" "${DISTDIR}/${ARCH}-${BASE_PACKAGENAME}-libreoffice${patchname}-${PVR}.xd3" "${WORKDIR}/tmpdist.tar" || die
|
||||
mv "${WORKDIR}/tmpdist.tar" "${WORKDIR}/${ARCH}-${BASE_PACKAGENAME}-libreoffice-${PVR}.tar" || die
|
||||
fi
|
||||
|
||||
einfo "Unpacking new ${ARCH}-${BASE_PACKAGENAME}-libreoffice-${PVR}.tar"
|
||||
unpack "./${ARCH}-${BASE_PACKAGENAME}-libreoffice-${PVR}.tar"
|
||||
}
|
||||
|
||||
src_configure() { :; }
|
||||
|
||||
src_compile() { :; }
|
||||
|
||||
src_install() {
|
||||
dodir /usr
|
||||
cp -aR "${S}"/usr/* "${ED}"/usr/ || die
|
||||
}
|
@ -1,36 +1,12 @@
|
||||
DIST amd64-bin-libreoffice-6.4.3.2.tar.xz 113273468 BLAKE2B b32633570226dcc79afef682bc9cd99e7e6fc7c29361d2ed42b177444318a3a1ef53e6f001515e9602304569e6d164644f74e69095e4050281eedb7106e02576 SHA512 94c597f096053dd5340e63e21778a36892c10545779f63cd9123e2d8b50ef27979b6cfe68c0954de17c706b8adade834b7361a370b6b0df367b2971b9d604770
|
||||
DIST amd64-bin-libreoffice-6.4.6.2-r1.tar.xz 131243800 BLAKE2B 3f516c4897fd52405a4a74ff7f70b6ecf0a81ba9cb275155ea5f7db2e7c4905c00b5688bf21a7390f8f8f38090515e83d3f7b1d7e3e9bfebf5804de6a60dce81 SHA512 67f1ea0b815b85d9dc524f35dc4de1f9e4354e6258eb4d8de8e7419c4870052edf64cfd7e2f27c9edd1e325e5ebca384bd0de18235ef87232522b9154e62ec9c
|
||||
DIST amd64-bin-libreoffice-6.4.6.2-r2.tar.xz 131250704 BLAKE2B 3cb2126b88658cddbc42e982c2d25dc3592955c594aa60f731b8082f4173e9cd96f6663c64fbb345ad7b1b99a7981c2364c7382397ccf3ad9be25e176bf4fd1e SHA512 f40b66f6261a35a421817b4d686cedf3361823e0284bf3a40255c9cde85620ef20c5d8fae88ff60c16bfef0cb96b9e8a1bc55c510a132fdeee54b9587ca6b37c
|
||||
DIST amd64-bin-libreoffice-gnome-6.4.3.2.xd3 1223025 BLAKE2B 60a826223df7190e23dad0cad2a5f46acc80590dc53ddbbb44725e8b2011ecd687c3d05db112c5e769f0f7962f68c8281cc25822f3b806e593cc640670101e85 SHA512 9a087dea29278eb14c6d121370b9803b9232b6ed6ce10d236fa7c5d6a326a0ac3eacf52f1dd488198449fd7ba7728e7e92627cfb67924406d3ec557ac0268522
|
||||
DIST amd64-bin-libreoffice-gnome-6.4.6.2-r1.xd3 1886401 BLAKE2B 01462ba52489cbcb4e8f265ab4d8f07e413a06014aaa5e46e8a1df9d8c4b77bf46a6917e090a938adc5031997ff7c04f1c1435591c3932e1e96fb482667a927f SHA512 66e921d4288801d53cd215fc1334389fb23358c922c59e3fbd3602680415ce94454427838d16eea9af1e7f1e027da252455bb6a0d80264eeac51cb549eee6ae4
|
||||
DIST amd64-bin-libreoffice-gnome-6.4.6.2-r2.xd3 1886188 BLAKE2B 4f0cf34b16b1a9c753deee20200670017395a092134683f43d67a5dad3896cc0be72e3ca7ac099af33a0d81fc82e723bd9139285cfe1a0019a872c54103f6b68 SHA512 510000f14073c21dba8a134f7ee5b3889e83aef19abd4443d2ff5ab624ea80f2e220950cd00b0b9b305e857fb875b81758b3d64fa94474392ad87ccac0cb5bf9
|
||||
DIST amd64-bin-libreoffice-gnome-java-6.4.3.2.xd3 27598984 BLAKE2B e6f20918bb3e7355df26d4f212d1e1e90f73fd79e5aad1308403bdd11a9ef3318d244c2a78216a22eba619ed2f4c6b42273bfe064b14045d5ba6cbd0fecf44ba SHA512 377e27ee97ed15ad7963d3f4ae6c22bad24dca52f3552e8a557d30bb81099e9487b0a803fedf41a5254a998d17f401f723774f3e5a0d3fe0b386f76296d582e8
|
||||
DIST amd64-bin-libreoffice-gnome-java-6.4.6.2-r1.xd3 28378971 BLAKE2B 7cc0fa5f71441a0c8a3fe197fed0c9c2699e1f1c572f1d6754fb7596125e938771e4b407f078f8f65596346ad6609cbde15e2507114df7d3805628512a054a9e SHA512 6449765c5000314b4eb676faca46ece42e642d44ec58b9e425e483a71641b0bcfca46b77b12b847afb91dda6dc3fcd83f49b6ced37f1b6e0afe0576327fa1797
|
||||
DIST amd64-bin-libreoffice-gnome-java-6.4.6.2-r2.xd3 28380619 BLAKE2B d844e396cb4da470ab27c7c566cae91c559d2502f5bf4e0c5796806f6ab860b1e92757e39fe61922c43a34a26b01828fe4d8a59bb4f70d7bdbef0cbf4d0dc276 SHA512 5f7bdc21dbfe17afdeb0460fc7df1d38b411bcc46ea1dbb749c2255d65a9b94d0cd49b1cb3af14cb4b0f89d9ed58a36d857d15a0415e256b9320f0304a379920
|
||||
DIST amd64-bin-libreoffice-java-6.4.3.2.xd3 27479788 BLAKE2B 2d4c33e39eb99a43c1aee46d1e78739918228833d3868457c5e64211fb4cba21fe3c2432fb9cf6f164bf060141f68c8cb986dfe1f1093de6a6b429a63e5425b0 SHA512 f991e5125efe64500dfeb30cf145f85e61460cfb133990f7b7662d5bb281e9b152b7a62a04a2671240b015cd61064f7c537260ad69cd386bc832e02235890098
|
||||
DIST amd64-bin-libreoffice-java-6.4.6.2-r1.xd3 28248132 BLAKE2B 0915b7abc7bc0faa1d9421be6a65a25eae0a5eed77780076befbae15e5fd9538458c1b75e3f4f10a6bd459a30bce643c9611bab9069cd53bad8eab38304b6d67 SHA512 0e57a0a0987ce3087bbbd9b9197a0ce829da63e7f66ec8a063aada0c5fca2f710a31f0a3bebafc8e8f8e1b7f633d7283a2e5fe106dff152d1cd7cc97c6973bb2
|
||||
DIST amd64-bin-libreoffice-java-6.4.6.2-r2.xd3 28215336 BLAKE2B a6524b72e6d27620e939d1ec7bfd57edc0bf5ed63152e80f3eba4eea8bf18e95eeedbf850e615a8c5f365808b6b83fb538a6679e3950bbc382818d89e2b70c69 SHA512 022da7edea982c03dd9ac96d6fb8719bda51d750722146ce857e781e6e4fe3f7bdddbc8e14cd7cf22edad84a9e955ad903107eb097e7642025e42d6d9056974e
|
||||
DIST amd64-bin-libreoffice-kde-6.4.3.2.xd3 17773121 BLAKE2B b606a90277eacfc8a7683edad75027142ae9348292cb72e82836ce0686c4ddabb78752e3e93eb994d1967fde77d7f7dc0c73a6b6199b8abc230d7ca39fd5a4d9 SHA512 ae29d2975d88fe14e0518989218c3e05ca722073ed3de8f8d2ee18d30c6a49ea8f9aaf58d2f5ffdb52a175361108b62ad543e4e1a283bfc968b518cdd191c628
|
||||
DIST amd64-bin-libreoffice-kde-6.4.6.2-r1.xd3 18443074 BLAKE2B 4ad1951e418080ed0663aab620f6a0b180d1c9db228f23b276f2fa54828f9b0ba66aeb7f0823ee5678cfda286b459fe96719f76135c5329027732393e66e0b3f SHA512 b869664e74337994dcf54506c0c548618fb9f1da1d0cbec367e2b87df8acfdd5b743f7d9697415d408ceeea743450b1c561527b311124479b2b352bb5c60e686
|
||||
DIST amd64-bin-libreoffice-kde-6.4.6.2-r2.xd3 18424710 BLAKE2B 6153f778a10cc51564a2718de27bd9cea4c55f22bed3f27564079cd8887ae99cec1ab3ca20c859a054ba2531464883a40602447daf348058570f2cff44595f1a SHA512 2b67b2b4a4f1eff704bf6e807b24b82ca8ef51c63a480395256c3bcd89667b860ca9b5d7261c3df5950f75cda67a5c3621947596e826882efb173ccac238a673
|
||||
DIST amd64-bin-libreoffice-kde-java-6.4.3.2.xd3 27844140 BLAKE2B 4ecb445fab0600a56927001d5994584c230ff3c4c467301e235e1905ed29661b0467459af70384e063873c8a824565d902fb07282a53894be115d90d68c68bdf SHA512 9e459cee94554aad8898042c0f14465889aee83a11e100e7b3f233c2d6d9d5a201f52e825d8fe1ecbadbd0c8f0155c28870aa6e517d543d3ba3d3c4185c95704
|
||||
DIST amd64-bin-libreoffice-kde-java-6.4.6.2-r1.xd3 28697445 BLAKE2B c57782cd234bfe22a296e92ebfd4ef9609d109b0c1739e090dfc6f6a38113c3ad348272bbeab1f25594122a22edb88476d35559b00a43649fdacb63732a5da97 SHA512 090b3c60f26d4689548b8f745b95606c678925bde217b2618b5c45292e2ac2768ed9aed5f119c0956e8cdbe46fe22a9c42e40334d692a284e0328b5614dba7d2
|
||||
DIST amd64-bin-libreoffice-kde-java-6.4.6.2-r2.xd3 28690924 BLAKE2B 2bf8712408e5c993a4c346dc86be3c4ebcf4a24c791ddcfdcf26fa526d4a58404bbd42d2476520fe809b61cafdacaf0591cc598d3730e21e0a4c4a001b3fd0a8 SHA512 db31c45d802664a83dc27fb73b207b38fc465cd563524f4f31be5bdf1cee213219243525d316ccf203b02afb4e7ed562cb5ab9d54ca7e2426f0554280814846f
|
||||
DIST x86-bin-libreoffice-6.4.3.2.tar.xz 115234220 BLAKE2B 88eba1138e1cbc6fbf4ec63d5b47215aad89ffa72318633c770e5adbf4c2c2d6e36d4868bec0789795dfc23eb2ee140dbc7224f2c1bd22bd82e22be89c44375a SHA512 1526c94a8d9c49639b6d888f283624c87a43d9c66add0d7971eebfa92e9c922dc4c752a49af7c0c3a7ec7e6b96bc38eadd7a29a4eda24fd3c7b617b27dcb609b
|
||||
DIST x86-bin-libreoffice-6.4.6.2-r1.tar.xz 133216996 BLAKE2B 1d3bc3b4ad941616108519c900ceb6f55c2ec0f92dfef423d83e6b89caa41310e8d99a746fad0b1d780bde208fdd7f11df67387459d099b530c1e400065f944d SHA512 e47bc506ebe5792e0b2eaee6dee8a7bac86b44a04d05ca858fe5a07b478ec239cf4abbd3cfa980ca93b479d96abae10fec0ee0387dd81c853666ee565d881346
|
||||
DIST x86-bin-libreoffice-6.4.6.2-r2.tar.xz 133202572 BLAKE2B 235a1457025f70c16c2f71e80ae784df8d1d8555b8b47ff3028ad0841598199592e371e71d7f99504806ceba9d59387ec11fbcfdd871466f614d3257522dba8e SHA512 e82c10d2dff99b5572cf80ec53a36ead86b5d0291a734fac6523d3c9da5bba1f3c266f81405a5c205015ed54fc9e60520b05324526c8745fee1393ef7340698d
|
||||
DIST x86-bin-libreoffice-gnome-6.4.3.2.xd3 1225517 BLAKE2B b61fa6a5b51eba1f260d16c9bf2cf0d08d3734dc20a11e44e2730dfb8d62b42d59ba4d8708ffdaea8005fd94a852b3c2e7391d859e2c706275e5a7a067f982b9 SHA512 b94ca1f1038285bb8604f685433904f3c186dd6e1c707be9b806153c68fd29aa87601cda0a5d0e77911f67a344815a7e7d255091466620ca9a21a1d606d8c0eb
|
||||
DIST x86-bin-libreoffice-gnome-6.4.6.2-r1.xd3 1891271 BLAKE2B 7e0039481d13e4f9229b9f459b7786ec5a278233f569c3a2405fc2cf29402c2f734c1bde675de23f3989c1828eaabbcfcd0edb4d5854b52d024f2437cd1084d2 SHA512 e97c0d7638bdfab6c857c309ee2964d9b88e7772095dfd8ab9f1473ce770ebf0fc7e9df404f5a14d0edfef0deca7fe598dfa26c6e3ec4f6d8eca0e938f7946a5
|
||||
DIST x86-bin-libreoffice-gnome-6.4.6.2-r2.xd3 1905204 BLAKE2B 4976906069cbbd1a2f32269f9517afb627d59603301a99996bdea5a827bbfcaa602f14134f0d3b7f660b5778547322fb33e5183d410d4bb813220fcebca4f13c SHA512 ae21a2ac49ded6b583ad0854ae20ddddf5fde9ebb17fbd1bc687b44b2c764ddbf08ddd199812d1bcb06bed5b41aa928c8faa9549418549f439b30c6544072643
|
||||
DIST x86-bin-libreoffice-gnome-java-6.4.3.2.xd3 25224776 BLAKE2B 5fa64d26595a69ec514517f4f9429d697319f99a5b3765908a5ef53969023b70fa76c42401e3abfb0229e233f81a111751bdf774629a2eb43054c89b071d29e8 SHA512 9cd1fb2a0b433ff98b515989bfa9fc0f5d8d502c2f3ddab8bf3e9e22ae7833bed37497302cf8f27269e7eafd78bb26bf34dd8a2ff458a4a876bfd90804d6952e
|
||||
DIST x86-bin-libreoffice-gnome-java-6.4.6.2-r1.xd3 25843714 BLAKE2B 2b08e1bab43d0c4bb8dbe1ec9897f9ec4c58711f0b803b567a363814aa68bf70bde534df488bc3b9633e3c23417261f81fc505f4b552575d6cb7f3b53a64d161 SHA512 1c6dee450208115f0ecab9437b244cc0a90ffb41c2001001ed6bffe53e7e2b6391bf18c1a13c7256a5070adff0b6cc4e0e8a12a743aeba620854403c9a0bbceb
|
||||
DIST x86-bin-libreoffice-gnome-java-6.4.6.2-r2.xd3 25844744 BLAKE2B 143403983b1c918f3ff82ad934aefb60a2deae830407659f0d72bbebe87a31f13002ebd8ab879ae5469dde5b966f91e9081c716fb82c838182174759e1368bac SHA512 ce8646f82049f38f044fd5c7a330501dddab07e48df9e82bf0114bffd27ca7d9d82c3e55863c57017e7c1aac2d33d8824179646d19fe6afdd3767e225775cb6d
|
||||
DIST x86-bin-libreoffice-java-6.4.3.2.xd3 24828153 BLAKE2B da19912f611914e4de44526cdf81cc3cd029554ebfe1ea1d850c79f95877e686fc1d372804ea9e0f20355c898f00b66e471b8a8f06ad69451686f2f04242d899 SHA512 86ad918ad2a5352d771fff149a80f0d01fb877c91b1dcaee8a4429eade5bee3f64ac389146831b26091fff3a0670e885b675e56b21f9e4beb48af91b895ddb11
|
||||
DIST x86-bin-libreoffice-java-6.4.6.2-r1.xd3 25715907 BLAKE2B 067d649a2e5c3feba22cfe0e1ec12451f766ab5d81ba94617e15bae6c42179b1f9f8410a217e2fbdf2425c335dcd42d70a9a2b2f7552fd627a5f2c3d4349b739 SHA512 75c756780b10c8bac1858cca72a240280b37134e169ed91457f4d5bbe3306d27594dd4abd283d8427773c353f17c453de4ddb48070c97cef095ed9e59024acf5
|
||||
DIST x86-bin-libreoffice-java-6.4.6.2-r2.xd3 25972754 BLAKE2B ce1a7f4557972754f6ba3857bdc0244ab507d984486497a3c6715162db6aeadf58cbe3061a078d91fa8fcc19d8ee266d4650d01ee585c34eef1fb264132230a8 SHA512 52472ae87d0a9af4d9e68591188baf008eaa195ae73a7312b4ee4253a41bbae93aa14236a9042a6019d13d42de347e95a96170eb1f427c145e20f7e278894749
|
||||
DIST x86-bin-libreoffice-kde-6.4.3.2.xd3 16007423 BLAKE2B 6fd735641dfa0a3340a27c7f5ec76495559905f0dda02d4d71a40fd2619e4331b47cf4c34329927d97f29ad96450f9ef91456563384c7f375e1bba3855892012 SHA512 e448d6cb693a92a26690f8c8604f2bb9a43883d862678e0c071b8a3289e06397ddacf45adecea2ac456f924693787879828dc0d9d210e5700edc73b1bafde6c3
|
||||
DIST x86-bin-libreoffice-kde-6.4.6.2-r1.xd3 17307815 BLAKE2B 13c55f284516c3c1628808798d9e9ea7eddaa6d933fcdcfc589dfbcb5d5a99356d0458ce9299078c31cd58656c42c7c3fa543fcc8335dc2903dee2ec6a0ac741 SHA512 9979ce0eef8c7f80a0739826fce37849e313118525c87fe9210083810195c01411d1ea4afb61eb15b4f36d5d75a1308ae16e0f2a810cc7ce184cc0c4c2e0228e
|
||||
DIST x86-bin-libreoffice-kde-6.4.6.2-r2.xd3 16601007 BLAKE2B 8006626e82d0423449b0407e32ecb6a345cae46cd4006d545bcb4727873c90a1984c3d811c2b3e83bde7d5b02ea5b81390e7b782473f12564efb536c57d40ba4 SHA512 e6cff3950450bd6d4a026321a69898c29eea4eeb66b34022dddc2447780712fc221e17b8fe2f267d506d4db7c63133bc2bbca78fb3e769a451337abd354d926d
|
||||
DIST x86-bin-libreoffice-kde-java-6.4.3.2.xd3 25368218 BLAKE2B 9070e9428a52699fdae67ce85502c69171a7e09d45b3cd51c1d783d677de971d3db5aeabf056a4f6b774c0988d7f3f405279f4ae24352c3e9904a385ff93c25a SHA512 e705d70a7a6841309cc0c0f6e1ecef9d2280299a3650558d8d3fe11a07f01d0a10e61046629989b8c7a949f639fa288a79c0116c1edaec4b5a5e6e1b9bf45f0b
|
||||
DIST x86-bin-libreoffice-kde-java-6.4.6.2-r1.xd3 27489312 BLAKE2B 9a43709bc46b84d2d6383bc1720a3d2b80512974a29a9880ecc87c71ed1c0c33cc135b38e3af3c160ab462bcac035f598d3e4b876c0d4e0dfb2efa83265190da SHA512 dde89f6eea3d186777e1900dca941529b813128d7e776b7e8e820e0a4f6ca97760fcb3c759cec7b994603dfa1f78abe934291433669b1dbf1bab09634f7480c8
|
||||
DIST x86-bin-libreoffice-kde-java-6.4.6.2-r2.xd3 27515503 BLAKE2B 3044048d4f7ec8e984ff9e07a3916f5db8f49fd9e10949a31d063ac9daafe916c109a6367959ce5156d14b894ee6ca31be288850e6107c2b83078b59063d4b6c SHA512 98fe91afa0928f7dded76f0088a04cfecf05bf41c5d5b4bddfeac3a37af6fd8e763e21dafe6da234f28e18cd4e51d8b3582ba4c2c2c9d9c72048626e17cb3004
|
||||
|
@ -1,252 +0,0 @@
|
||||
# Copyright 1999-2020 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
BASE_PACKAGENAME="bin"
|
||||
BASE_AMD64_URI="https://tamiko.kyomu.43-1.org/distfiles/amd64-${BASE_PACKAGENAME}-"
|
||||
BASE_X86_URI="https://tamiko.kyomu.43-1.org/distfiles/x86-${BASE_PACKAGENAME}-"
|
||||
|
||||
PYTHON_COMPAT=( python3_7 )
|
||||
PYTHON_REQ_USE="xml"
|
||||
|
||||
inherit java-pkg-opt-2 python-single-r1 prefix toolchain-funcs xdg-utils
|
||||
|
||||
DESCRIPTION="A full office productivity suite. Binary package"
|
||||
HOMEPAGE="https://www.libreoffice.org"
|
||||
SRC_URI_AMD64="
|
||||
${BASE_AMD64_URI}libreoffice-${PVR}.tar.xz
|
||||
kde? (
|
||||
!java? ( ${BASE_AMD64_URI}libreoffice-kde-${PVR}.xd3 )
|
||||
java? ( ${BASE_AMD64_URI}libreoffice-kde-java-${PVR}.xd3 )
|
||||
)
|
||||
gnome? (
|
||||
!java? ( ${BASE_AMD64_URI}libreoffice-gnome-${PVR}.xd3 )
|
||||
java? ( ${BASE_AMD64_URI}libreoffice-gnome-java-${PVR}.xd3 )
|
||||
)
|
||||
!kde? ( !gnome? (
|
||||
java? ( ${BASE_AMD64_URI}libreoffice-java-${PVR}.xd3 )
|
||||
) )
|
||||
"
|
||||
SRC_URI_X86="
|
||||
${BASE_X86_URI}libreoffice-${PVR}.tar.xz
|
||||
kde? (
|
||||
!java? ( ${BASE_X86_URI}libreoffice-kde-${PVR}.xd3 )
|
||||
java? ( ${BASE_X86_URI}libreoffice-kde-java-${PVR}.xd3 )
|
||||
)
|
||||
gnome? (
|
||||
!java? ( ${BASE_X86_URI}libreoffice-gnome-${PVR}.xd3 )
|
||||
java? ( ${BASE_X86_URI}libreoffice-gnome-java-${PVR}.xd3 )
|
||||
)
|
||||
!kde? ( !gnome? (
|
||||
java? ( ${BASE_X86_URI}libreoffice-java-${PVR}.xd3 )
|
||||
) )
|
||||
"
|
||||
|
||||
SRC_URI="
|
||||
amd64? ( ${SRC_URI_AMD64} )
|
||||
x86? ( ${SRC_URI_X86} )
|
||||
"
|
||||
|
||||
IUSE="gnome java kde"
|
||||
LICENSE="LGPL-3"
|
||||
SLOT="0"
|
||||
KEYWORDS="-* amd64 x86"
|
||||
|
||||
BIN_COMMON_DEPEND="
|
||||
app-text/hunspell:0/1.7
|
||||
=app-text/libexttextcat-3.4*
|
||||
=app-text/libmwaw-0.3*
|
||||
dev-libs/boost:0/1.72.0
|
||||
dev-libs/icu:0/67.1
|
||||
=dev-libs/liborcus-0.15*
|
||||
>=media-gfx/graphite2-1.3.10
|
||||
media-libs/harfbuzz:0/0.9.18[icu]
|
||||
media-libs/libpng:0/16
|
||||
>=sys-devel/gcc-9.3.0
|
||||
>=sys-libs/glibc-2.30
|
||||
virtual/jpeg-compat:62
|
||||
"
|
||||
|
||||
# PLEASE place any restrictions that are specific to the binary builds
|
||||
# into the BIN_COMMON_DEPEND block above.
|
||||
# All dependencies below this point should remain identical to those in
|
||||
# the source ebuilds.
|
||||
|
||||
COMMON_DEPEND="
|
||||
${BIN_COMMON_DEPEND}
|
||||
${PYTHON_DEPS}
|
||||
app-arch/unzip
|
||||
app-arch/zip
|
||||
app-crypt/gpgme[cxx]
|
||||
app-text/hunspell:=
|
||||
>=app-text/libabw-0.1.0
|
||||
>=app-text/libebook-0.1
|
||||
app-text/libepubgen
|
||||
>=app-text/libetonyek-0.1
|
||||
app-text/libexttextcat
|
||||
app-text/liblangtag
|
||||
>=app-text/libmspub-0.1.0
|
||||
>=app-text/libmwaw-0.3.1
|
||||
app-text/libnumbertext
|
||||
>=app-text/libodfgen-0.1.0
|
||||
app-text/libqxp
|
||||
app-text/libstaroffice
|
||||
app-text/libwpd:0.10[tools]
|
||||
app-text/libwpg:0.3
|
||||
>=app-text/libwps-0.4
|
||||
app-text/mythes
|
||||
>=dev-cpp/clucene-2.3.3.4-r2
|
||||
>=dev-cpp/libcmis-0.5.2
|
||||
dev-db/unixODBC
|
||||
dev-lang/perl
|
||||
>=dev-libs/boost-1.72.0:=[nls]
|
||||
dev-libs/expat
|
||||
dev-libs/hyphen
|
||||
dev-libs/icu:=
|
||||
dev-libs/libassuan
|
||||
dev-libs/libgpg-error
|
||||
>=dev-libs/liborcus-0.15.0
|
||||
dev-libs/librevenge
|
||||
dev-libs/libxml2
|
||||
dev-libs/libxslt
|
||||
dev-libs/nspr
|
||||
dev-libs/nss
|
||||
>=dev-libs/redland-1.0.16
|
||||
>=dev-libs/xmlsec-1.2.28[nss]
|
||||
media-gfx/fontforge
|
||||
media-gfx/graphite2
|
||||
media-libs/fontconfig
|
||||
media-libs/freetype:2
|
||||
>=media-libs/harfbuzz-0.9.42:=[graphite,icu]
|
||||
media-libs/lcms:2
|
||||
>=media-libs/libcdr-0.1.0
|
||||
>=media-libs/libepoxy-1.3.1[X]
|
||||
>=media-libs/libfreehand-0.1.0
|
||||
media-libs/libpagemaker
|
||||
>=media-libs/libpng-1.4:0=
|
||||
>=media-libs/libvisio-0.1.0
|
||||
media-libs/libzmf
|
||||
net-libs/neon
|
||||
net-misc/curl
|
||||
sci-mathematics/lpsolve
|
||||
sys-libs/zlib
|
||||
virtual/glu
|
||||
virtual/jpeg:0
|
||||
virtual/opengl
|
||||
x11-libs/cairo[X]
|
||||
x11-libs/libXinerama
|
||||
x11-libs/libXrandr
|
||||
x11-libs/libXrender
|
||||
net-print/cups
|
||||
sys-apps/dbus
|
||||
gnome? (
|
||||
dev-libs/glib:2
|
||||
gnome-base/dconf
|
||||
gnome-extra/evolution-data-server
|
||||
)
|
||||
media-libs/gstreamer:1.0
|
||||
media-libs/gst-plugins-base:1.0
|
||||
!kde? (
|
||||
dev-libs/glib:2
|
||||
dev-libs/gobject-introspection
|
||||
gnome-base/dconf
|
||||
media-libs/mesa[egl]
|
||||
x11-libs/gtk+:3
|
||||
x11-libs/pango
|
||||
)
|
||||
kde? (
|
||||
dev-qt/qtcore:5
|
||||
dev-qt/qtgui:5
|
||||
dev-qt/qtwidgets:5
|
||||
dev-qt/qtx11extras:5
|
||||
kde-frameworks/kconfig:5
|
||||
kde-frameworks/kcoreaddons:5
|
||||
kde-frameworks/ki18n:5
|
||||
kde-frameworks/kio:5
|
||||
kde-frameworks/kwindowsystem:5
|
||||
)
|
||||
dev-db/mariadb-connector-c
|
||||
"
|
||||
|
||||
RDEPEND="${COMMON_DEPEND}
|
||||
!app-office/libreoffice
|
||||
!app-office/openoffice
|
||||
media-fonts/liberation-fonts
|
||||
|| ( x11-misc/xdg-utils kde-plasma/kde-cli-tools )
|
||||
java? ( >=virtual/jre-1.8 )
|
||||
kde? ( kde-frameworks/breeze-icons:* )
|
||||
"
|
||||
|
||||
PDEPEND="
|
||||
=app-office/libreoffice-l10n-${PV}*
|
||||
"
|
||||
|
||||
DEPEND="dev-util/xdelta:3"
|
||||
|
||||
# only one flavor at a time
|
||||
REQUIRED_USE="kde? ( !gnome ) gnome? ( !kde ) ${PYTHON_REQUIRED_USE}"
|
||||
|
||||
RESTRICT="test strip"
|
||||
|
||||
S="${WORKDIR}"
|
||||
|
||||
PYTHON_UPDATER_IGNORE="1"
|
||||
|
||||
QA_PREBUILT="/usr/*"
|
||||
|
||||
pkg_setup() {
|
||||
python-single-r1_pkg_setup
|
||||
}
|
||||
|
||||
src_unpack() {
|
||||
einfo "Uncompressing distfile ${ARCH}-${BASE_PACKAGENAME}-libreoffice-${PVR}.tar.xz"
|
||||
xz -cd "${DISTDIR}/${ARCH}-${BASE_PACKAGENAME}-libreoffice-${PVR}.tar.xz" > "${WORKDIR}/${ARCH}-${BASE_PACKAGENAME}-libreoffice-${PVR}.tar" || die
|
||||
|
||||
local patchname
|
||||
use kde && patchname="-kde"
|
||||
use gnome && patchname="-gnome"
|
||||
use java && patchname="${patchname}-java"
|
||||
|
||||
if [[ -n "${patchname}" ]]; then
|
||||
einfo "Patching distfile ${ARCH}-${BASE_PACKAGENAME}-libreoffice-${PVR}.tar using ${ARCH}-${BASE_PACKAGENAME}-libreoffice${patchname}-${PVR}.xd3"
|
||||
xdelta3 -d -s "${WORKDIR}/${ARCH}-${BASE_PACKAGENAME}-libreoffice-${PVR}.tar" "${DISTDIR}/${ARCH}-${BASE_PACKAGENAME}-libreoffice${patchname}-${PVR}.xd3" "${WORKDIR}/tmpdist.tar" || die
|
||||
mv "${WORKDIR}/tmpdist.tar" "${WORKDIR}/${ARCH}-${BASE_PACKAGENAME}-libreoffice-${PVR}.tar" || die
|
||||
fi
|
||||
|
||||
einfo "Unpacking new ${ARCH}-${BASE_PACKAGENAME}-libreoffice-${PVR}.tar"
|
||||
unpack "./${ARCH}-${BASE_PACKAGENAME}-libreoffice-${PVR}.tar"
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
cp "${FILESDIR}"/50-${PN} "${T}"
|
||||
eprefixify "${T}"/50-${PN}
|
||||
default
|
||||
}
|
||||
|
||||
src_configure() { :; }
|
||||
|
||||
src_compile() { :; }
|
||||
|
||||
src_install() {
|
||||
dodir /usr
|
||||
cp -aR "${S}"/usr/* "${ED}"/usr/
|
||||
|
||||
# prevent revdep-rebuild from attempting to rebuild all the time
|
||||
insinto /etc/revdep-rebuild && doins "${T}/50-${PN}"
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
xdg_icon_cache_update
|
||||
xdg_desktop_database_update
|
||||
xdg_mimeinfo_database_update
|
||||
|
||||
use java || \
|
||||
ewarn 'If you plan to use the Base application you should enable java or you will get crashes and missing features.'
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
xdg_icon_cache_update
|
||||
xdg_desktop_database_update
|
||||
xdg_mimeinfo_database_update
|
||||
}
|
@ -1,251 +0,0 @@
|
||||
# Copyright 1999-2020 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
BASE_PACKAGENAME="bin"
|
||||
BASE_AMD64_URI="https://tamiko.kyomu.43-1.org/distfiles/amd64-${BASE_PACKAGENAME}-"
|
||||
BASE_X86_URI="https://tamiko.kyomu.43-1.org/distfiles/x86-${BASE_PACKAGENAME}-"
|
||||
|
||||
PYTHON_COMPAT=( python3_7 )
|
||||
PYTHON_REQ_USE="xml"
|
||||
|
||||
inherit java-pkg-opt-2 python-single-r1 prefix toolchain-funcs xdg-utils
|
||||
|
||||
DESCRIPTION="A full office productivity suite. Binary package"
|
||||
HOMEPAGE="https://www.libreoffice.org"
|
||||
SRC_URI_AMD64="
|
||||
${BASE_AMD64_URI}libreoffice-${PVR}.tar.xz
|
||||
kde? (
|
||||
!java? ( ${BASE_AMD64_URI}libreoffice-kde-${PVR}.xd3 )
|
||||
java? ( ${BASE_AMD64_URI}libreoffice-kde-java-${PVR}.xd3 )
|
||||
)
|
||||
gnome? (
|
||||
!java? ( ${BASE_AMD64_URI}libreoffice-gnome-${PVR}.xd3 )
|
||||
java? ( ${BASE_AMD64_URI}libreoffice-gnome-java-${PVR}.xd3 )
|
||||
)
|
||||
!kde? ( !gnome? (
|
||||
java? ( ${BASE_AMD64_URI}libreoffice-java-${PVR}.xd3 )
|
||||
) )
|
||||
"
|
||||
SRC_URI_X86="
|
||||
${BASE_X86_URI}libreoffice-${PVR}.tar.xz
|
||||
kde? (
|
||||
!java? ( ${BASE_X86_URI}libreoffice-kde-${PVR}.xd3 )
|
||||
java? ( ${BASE_X86_URI}libreoffice-kde-java-${PVR}.xd3 )
|
||||
)
|
||||
gnome? (
|
||||
!java? ( ${BASE_X86_URI}libreoffice-gnome-${PVR}.xd3 )
|
||||
java? ( ${BASE_X86_URI}libreoffice-gnome-java-${PVR}.xd3 )
|
||||
)
|
||||
!kde? ( !gnome? (
|
||||
java? ( ${BASE_X86_URI}libreoffice-java-${PVR}.xd3 )
|
||||
) )
|
||||
"
|
||||
|
||||
SRC_URI="
|
||||
amd64? ( ${SRC_URI_AMD64} )
|
||||
x86? ( ${SRC_URI_X86} )
|
||||
"
|
||||
|
||||
IUSE="gnome java kde"
|
||||
LICENSE="LGPL-3"
|
||||
SLOT="0"
|
||||
KEYWORDS="-* ~amd64 ~x86"
|
||||
|
||||
BIN_COMMON_DEPEND="
|
||||
app-text/hunspell:0/1.7
|
||||
=app-text/libexttextcat-3.4*
|
||||
=app-text/libmwaw-0.3*
|
||||
dev-libs/boost:0/1.72.0
|
||||
dev-libs/icu:0/67.1
|
||||
=dev-libs/liborcus-0.15*
|
||||
>=media-gfx/graphite2-1.3.10
|
||||
media-libs/harfbuzz:0/0.9.18[icu]
|
||||
media-libs/libpng:0/16
|
||||
>=sys-devel/gcc-9.3.0
|
||||
>=sys-libs/glibc-2.31
|
||||
virtual/jpeg-compat:62
|
||||
"
|
||||
|
||||
# PLEASE place any restrictions that are specific to the binary builds
|
||||
# into the BIN_COMMON_DEPEND block above.
|
||||
# All dependencies below this point should remain identical to those in
|
||||
# the source ebuilds.
|
||||
|
||||
COMMON_DEPEND="
|
||||
${BIN_COMMON_DEPEND}
|
||||
${PYTHON_DEPS}
|
||||
app-arch/unzip
|
||||
app-arch/zip
|
||||
app-crypt/gpgme[cxx]
|
||||
app-text/hunspell:=
|
||||
>=app-text/libabw-0.1.0
|
||||
>=app-text/libebook-0.1
|
||||
app-text/libepubgen
|
||||
>=app-text/libetonyek-0.1
|
||||
app-text/libexttextcat
|
||||
app-text/liblangtag
|
||||
>=app-text/libmspub-0.1.0
|
||||
>=app-text/libmwaw-0.3.1
|
||||
app-text/libnumbertext
|
||||
>=app-text/libodfgen-0.1.0
|
||||
app-text/libqxp
|
||||
app-text/libstaroffice
|
||||
app-text/libwpd:0.10[tools]
|
||||
app-text/libwpg:0.3
|
||||
>=app-text/libwps-0.4
|
||||
app-text/mythes
|
||||
>=dev-cpp/clucene-2.3.3.4-r2
|
||||
>=dev-cpp/libcmis-0.5.2
|
||||
dev-db/unixODBC
|
||||
dev-lang/perl
|
||||
>=dev-libs/boost-1.72.0:=[nls]
|
||||
dev-libs/expat
|
||||
dev-libs/hyphen
|
||||
dev-libs/icu:=
|
||||
dev-libs/libassuan
|
||||
dev-libs/libgpg-error
|
||||
>=dev-libs/liborcus-0.15.0
|
||||
dev-libs/librevenge
|
||||
dev-libs/libxml2
|
||||
dev-libs/libxslt
|
||||
dev-libs/nspr
|
||||
dev-libs/nss
|
||||
>=dev-libs/redland-1.0.16
|
||||
>=dev-libs/xmlsec-1.2.28[nss]
|
||||
media-gfx/fontforge
|
||||
media-gfx/graphite2
|
||||
media-libs/fontconfig
|
||||
media-libs/freetype:2
|
||||
>=media-libs/harfbuzz-0.9.42:=[graphite,icu]
|
||||
media-libs/lcms:2
|
||||
>=media-libs/libcdr-0.1.0
|
||||
>=media-libs/libepoxy-1.3.1[X]
|
||||
>=media-libs/libfreehand-0.1.0
|
||||
media-libs/libpagemaker
|
||||
>=media-libs/libpng-1.4:0=
|
||||
>=media-libs/libvisio-0.1.0
|
||||
media-libs/libzmf
|
||||
net-libs/neon
|
||||
net-misc/curl
|
||||
sci-mathematics/lpsolve
|
||||
sys-libs/zlib
|
||||
virtual/glu
|
||||
virtual/jpeg:0
|
||||
virtual/opengl
|
||||
x11-libs/cairo[X]
|
||||
x11-libs/libXinerama
|
||||
x11-libs/libXrandr
|
||||
x11-libs/libXrender
|
||||
net-print/cups
|
||||
sys-apps/dbus[X]
|
||||
gnome? (
|
||||
dev-libs/glib:2
|
||||
gnome-base/dconf
|
||||
gnome-extra/evolution-data-server
|
||||
)
|
||||
media-libs/gstreamer:1.0
|
||||
media-libs/gst-plugins-base:1.0
|
||||
!kde? (
|
||||
dev-libs/glib:2
|
||||
dev-libs/gobject-introspection
|
||||
gnome-base/dconf
|
||||
media-libs/mesa[egl]
|
||||
x11-libs/gtk+:3
|
||||
x11-libs/pango
|
||||
)
|
||||
kde? (
|
||||
dev-qt/qtcore:5
|
||||
dev-qt/qtgui:5
|
||||
dev-qt/qtwidgets:5
|
||||
dev-qt/qtx11extras:5
|
||||
kde-frameworks/kconfig:5
|
||||
kde-frameworks/kcoreaddons:5
|
||||
kde-frameworks/ki18n:5
|
||||
kde-frameworks/kio:5
|
||||
kde-frameworks/kwindowsystem:5
|
||||
)
|
||||
dev-db/mariadb-connector-c
|
||||
"
|
||||
|
||||
RDEPEND="${COMMON_DEPEND}
|
||||
!app-office/libreoffice
|
||||
!app-office/openoffice
|
||||
media-fonts/liberation-fonts
|
||||
|| ( x11-misc/xdg-utils kde-plasma/kde-cli-tools )
|
||||
java? ( >=virtual/jre-1.8 )
|
||||
kde? ( kde-frameworks/breeze-icons:* )
|
||||
"
|
||||
|
||||
PDEPEND="
|
||||
=app-office/libreoffice-l10n-${PV}*
|
||||
"
|
||||
|
||||
DEPEND="dev-util/xdelta:3"
|
||||
|
||||
# only one flavor at a time
|
||||
REQUIRED_USE="kde? ( !gnome ) gnome? ( !kde ) ${PYTHON_REQUIRED_USE}"
|
||||
|
||||
RESTRICT="test strip"
|
||||
|
||||
S="${WORKDIR}"
|
||||
|
||||
PYTHON_UPDATER_IGNORE="1"
|
||||
|
||||
QA_PREBUILT="/usr/*"
|
||||
|
||||
pkg_setup() {
|
||||
python-single-r1_pkg_setup
|
||||
}
|
||||
|
||||
src_unpack() {
|
||||
einfo "Uncompressing distfile ${ARCH}-${BASE_PACKAGENAME}-libreoffice-${PVR}.tar.xz"
|
||||
xz -cd "${DISTDIR}/${ARCH}-${BASE_PACKAGENAME}-libreoffice-${PVR}.tar.xz" > "${WORKDIR}/${ARCH}-${BASE_PACKAGENAME}-libreoffice-${PVR}.tar" || die
|
||||
|
||||
local patchname
|
||||
use kde && patchname="-kde"
|
||||
use gnome && patchname="-gnome"
|
||||
use java && patchname="${patchname}-java"
|
||||
|
||||
if [[ -n "${patchname}" ]]; then
|
||||
einfo "Patching distfile ${ARCH}-${BASE_PACKAGENAME}-libreoffice-${PVR}.tar using ${ARCH}-${BASE_PACKAGENAME}-libreoffice${patchname}-${PVR}.xd3"
|
||||
xdelta3 -d -s "${WORKDIR}/${ARCH}-${BASE_PACKAGENAME}-libreoffice-${PVR}.tar" "${DISTDIR}/${ARCH}-${BASE_PACKAGENAME}-libreoffice${patchname}-${PVR}.xd3" "${WORKDIR}/tmpdist.tar" || die
|
||||
mv "${WORKDIR}/tmpdist.tar" "${WORKDIR}/${ARCH}-${BASE_PACKAGENAME}-libreoffice-${PVR}.tar" || die
|
||||
fi
|
||||
|
||||
einfo "Unpacking new ${ARCH}-${BASE_PACKAGENAME}-libreoffice-${PVR}.tar"
|
||||
unpack "./${ARCH}-${BASE_PACKAGENAME}-libreoffice-${PVR}.tar"
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
cp "${FILESDIR}"/50-${PN} "${T}"
|
||||
eprefixify "${T}"/50-${PN}
|
||||
default
|
||||
}
|
||||
|
||||
src_configure() { :; }
|
||||
|
||||
src_compile() { :; }
|
||||
|
||||
src_install() {
|
||||
dodir /usr
|
||||
cp -aR "${S}"/usr/* "${ED}"/usr/
|
||||
|
||||
# prevent revdep-rebuild from attempting to rebuild all the time
|
||||
insinto /etc/revdep-rebuild && doins "${T}/50-${PN}"
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
xdg_icon_cache_update
|
||||
xdg_desktop_database_update
|
||||
xdg_mimeinfo_database_update
|
||||
|
||||
ewarn 'If you plan to use the Base application you should use a source build and enable java and firebird.'
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
xdg_icon_cache_update
|
||||
xdg_desktop_database_update
|
||||
xdg_mimeinfo_database_update
|
||||
}
|
@ -1,91 +0,0 @@
|
||||
# Copyright 1999-2020 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
inherit rpm
|
||||
|
||||
BASE_PV=$(ver_cut 1-3)
|
||||
MY_PV="${PV/_alpha/.alpha}"
|
||||
MY_PV="${MY_PV/_beta/.beta}"
|
||||
[[ ${PV} == *alpha* || ${PV} == *beta* ]] && PN_DEV="Dev"
|
||||
|
||||
DESCRIPTION="Translations for the Libreoffice suite"
|
||||
HOMEPAGE="https://www.libreoffice.org"
|
||||
BASE_SRC_URI_TESTING="https://download.documentfoundation.org/${PN/-l10n/}/testing/${BASE_PV}/rpm"
|
||||
BASE_SRC_URI_STABLE="https://download.documentfoundation.org/${PN/-l10n/}/stable/${BASE_PV}/rpm"
|
||||
|
||||
LICENSE="|| ( LGPL-3 MPL-1.1 )"
|
||||
SLOT="0"
|
||||
KEYWORDS="amd64 ~arm ~arm64 ~ppc64 x86 ~amd64-linux ~x86-linux"
|
||||
IUSE="offlinehelp"
|
||||
|
||||
#
|
||||
# when changing the language lists, please be careful to preserve the spaces (bug 491728)
|
||||
#
|
||||
# "en:en-US" for mapping from Gentoo "en" to upstream "en-US" etc.
|
||||
LANGUAGES_HELP=" am ast bg bn-IN bn bo bs ca-valencia ca cs da de dz el en-GB en:en-US en-ZA eo es et eu fi fr gl gu he hi hr hu id is it ja ka km ko mk nb ne nl nn om pl pt-BR pt ru si sk sl sq sv tg tr ug uk vi zh-CN zh-TW "
|
||||
LANGUAGES="${LANGUAGES_HELP}af ar as be br brx cy dgo fa ga gd gug kk kmr-Latn kn kok ks lb lo lt lv mai ml mn mni mr my nr nso oc or pa:pa-IN ro rw sa:sa-IN sat sd sid sr-Latn sr ss st sw-TZ ta te th tn ts tt uz ve xh zu "
|
||||
|
||||
for lang in ${LANGUAGES_HELP}; do
|
||||
helppack="offlinehelp? ( ${BASE_SRC_URI_STABLE}/x86_64/LibreOffice${PN_DEV}_${BASE_PV}_Linux_x86-64_rpm_helppack_${lang#*:}.tar.gz -> LibreOffice_${MY_PV}_Linux_x86-64_rpm_helppack_${lang#*:}.tar.gz ${BASE_SRC_URI_TESTING}/x86_64/LibreOffice${PN_DEV}_${MY_PV}_Linux_x86-64_rpm_helppack_${lang#*:}.tar.gz -> LibreOffice_${MY_PV}_Linux_x86-64_rpm_helppack_${lang#*:}.tar.gz )"
|
||||
SRC_URI+=" l10n_${lang%:*}? ( ${helppack} )"
|
||||
done
|
||||
for lang in ${LANGUAGES}; do
|
||||
if [[ ${lang%:*} != en ]]; then
|
||||
langpack="${BASE_SRC_URI_STABLE}/x86_64/LibreOffice${PN_DEV}_${BASE_PV}_Linux_x86-64_rpm_langpack_${lang#*:}.tar.gz -> LibreOffice_${MY_PV}_Linux_x86-64_rpm_langpack_${lang#*:}.tar.gz ${BASE_SRC_URI_TESTING}/x86_64/LibreOffice${PN_DEV}_${MY_PV}_Linux_x86-64_rpm_langpack_${lang#*:}.tar.gz -> LibreOffice_${MY_PV}_Linux_x86-64_rpm_langpack_${lang#*:}.tar.gz"
|
||||
SRC_URI+=" l10n_${lang%:*}? ( ${langpack} )"
|
||||
fi
|
||||
IUSE+=" l10n_${lang%:*}"
|
||||
done
|
||||
unset lang helppack langpack
|
||||
|
||||
RDEPEND+="app-text/hunspell"
|
||||
|
||||
RESTRICT="strip"
|
||||
|
||||
S="${WORKDIR}"
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
|
||||
local lang dir rpmdir
|
||||
|
||||
# First remove dictionaries, we want to use system ones.
|
||||
find "${S}" -name *dict*.rpm -delete || die "Failed to remove dictionaries"
|
||||
|
||||
for lang in ${LANGUAGES}; do
|
||||
# break away if not enabled
|
||||
use l10n_${lang%:*} || continue
|
||||
|
||||
dir=${lang#*:}
|
||||
|
||||
# for english we provide just helppack, as translation is always there
|
||||
if [[ ${lang%:*} != en ]]; then
|
||||
rpmdir="LibreOffice_${MY_PV}_Linux_x86-64_rpm_langpack_${dir}/RPMS/"
|
||||
[[ -d ${rpmdir} ]] || die "Missing directory: ${rpmdir}"
|
||||
rpm_unpack ./${rpmdir}/*.rpm
|
||||
fi
|
||||
if [[ "${LANGUAGES_HELP}" =~ " ${lang} " ]] && use offlinehelp; then
|
||||
rpmdir="LibreOffice_${MY_PV}_Linux_x86-64_rpm_helppack_${dir}/RPMS/"
|
||||
[[ -d ${rpmdir} ]] || die "Missing directory: ${rpmdir}"
|
||||
rpm_unpack ./${rpmdir}/*.rpm
|
||||
fi
|
||||
done
|
||||
}
|
||||
|
||||
src_configure() { :; }
|
||||
src_compile() { :; }
|
||||
|
||||
src_install() {
|
||||
local dir="${S}"/opt/${PN/-l10n/}$(ver_cut 1-2)/
|
||||
# Condition required for people who do not install anything e.g. no l10n
|
||||
# or just english with no offlinehelp.
|
||||
if [[ -d "${dir}" ]] ; then
|
||||
insinto /usr/$(get_libdir)/${PN/-l10n/}/
|
||||
doins -r "${dir}"/*
|
||||
fi
|
||||
# remove extensions that are in l10n for some weird reason
|
||||
rm -rf "${ED}"/usr/$(get_libdir)/${PN/-l10n/}/share/extensions/ || \
|
||||
die "Failed to remove extensions"
|
||||
}
|
@ -1,42 +0,0 @@
|
||||
--- a/desktop/scripts/soffice.sh
|
||||
+++ a/desktop/scripts/soffice.sh
|
||||
@@ -147,6 +147,9 @@ if echo "$checks" | grep -q "cc" ; then
|
||||
exit 1;
|
||||
fi
|
||||
|
||||
+PYTHONPATH=$sd_prog${PYTHONPATH+:$PYTHONPATH}
|
||||
+export PYTHONPATH
|
||||
+
|
||||
case "$(uname -s)" in
|
||||
NetBSD|OpenBSD|DragonFly)
|
||||
# this is a temporary hack until we can live with the default search paths
|
||||
--- a/pyuno/source/module/uno.py
|
||||
+++ a/pyuno/source/module/uno.py
|
||||
@@ -16,11 +16,16 @@
|
||||
# except in compliance with the License. You may obtain a copy of
|
||||
# the License at http://www.apache.org/licenses/LICENSE-2.0 .
|
||||
#
|
||||
+import os
|
||||
import pyuno
|
||||
import sys
|
||||
import traceback
|
||||
import warnings
|
||||
|
||||
+sys.path.append('%eprefix%/usr/%libdir%/libreoffice/program')
|
||||
+if getattr(os.environ, 'URE_BOOTSTRAP', None) is None:
|
||||
+ os.environ['URE_BOOTSTRAP'] = "vnd.sun.star.pathname:%eprefix%/usr/%libdir%/libreoffice/program/fundamentalrc"
|
||||
+
|
||||
# since on Windows sal3.dll no longer calls WSAStartup
|
||||
import socket
|
||||
|
||||
--- a/pyuno/source/officehelper.py
|
||||
+++ a/pyuno/source/officehelper.py
|
||||
@@ -45,7 +45,7 @@ def bootstrap():
|
||||
if "UNO_PATH" in os.environ:
|
||||
sOffice = os.environ["UNO_PATH"]
|
||||
else:
|
||||
- sOffice = "" # lets hope for the best
|
||||
+ sOffice = "%eprefix%/usr/%libdir%/libreoffice/program"
|
||||
sOffice = os.path.join(sOffice, "soffice")
|
||||
if platform.startswith("win"):
|
||||
sOffice += ".exe"
|
@ -1,15 +0,0 @@
|
||||
diff --git a/sdext/source/pdfimport/xpdfwrapper/pdfioutdev_gpl.cxx b/sdext/source/pdfimport/xpdfwrapper/pdfioutdev_gpl.cxx
|
||||
index e9c2a407c279..16ad04bf660a 100644
|
||||
--- a/sdext/source/pdfimport/xpdfwrapper/pdfioutdev_gpl.cxx
|
||||
+++ b/sdext/source/pdfimport/xpdfwrapper/pdfioutdev_gpl.cxx
|
||||
@@ -563,7 +563,9 @@ void PDFOutDev::processLink(Link* link, Catalog*)
|
||||
if (!(pAction && pAction->getKind() == actionURI))
|
||||
return;
|
||||
|
||||
-#if POPPLER_CHECK_VERSION(0, 72, 0)
|
||||
+#if POPPLER_CHECK_VERSION(0, 86, 0)
|
||||
+ const char* pURI = static_cast<LinkURI*>(pAction)->getURI().c_str();
|
||||
+#elif POPPLER_CHECK_VERSION(0, 72, 0)
|
||||
const char* pURI = static_cast<LinkURI*>(pAction)->getURI()->c_str();
|
||||
#else
|
||||
const char* pURI = static_cast<LinkURI*>(pAction)->getURI()->getCString();
|
@ -1,551 +0,0 @@
|
||||
# Copyright 1999-2020 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
PYTHON_COMPAT=( python3_{6,7,8} )
|
||||
PYTHON_REQ_USE="threads(+),xml"
|
||||
|
||||
MY_PV="${PV/_alpha/.alpha}"
|
||||
MY_PV="${MY_PV/_beta/.beta}"
|
||||
# experimental ; release ; old
|
||||
# Usually the tarballs are moved a lot so this should make everyone happy.
|
||||
DEV_URI="
|
||||
https://dev-builds.libreoffice.org/pre-releases/src
|
||||
https://download.documentfoundation.org/libreoffice/src/${MY_PV:0:5}/
|
||||
https://downloadarchive.documentfoundation.org/libreoffice/old/${MY_PV}/src
|
||||
"
|
||||
ADDONS_URI="https://dev-www.libreoffice.org/src/"
|
||||
|
||||
BRANDING="${PN}-branding-gentoo-0.8.tar.xz"
|
||||
# PATCHSET="${P}-patchset-01.tar.xz"
|
||||
|
||||
[[ ${MY_PV} == *9999* ]] && inherit git-r3
|
||||
inherit autotools bash-completion-r1 check-reqs flag-o-matic java-pkg-opt-2 multiprocessing python-single-r1 qmake-utils toolchain-funcs xdg-utils
|
||||
|
||||
DESCRIPTION="A full office productivity suite"
|
||||
HOMEPAGE="https://www.libreoffice.org"
|
||||
SRC_URI="branding? ( https://dev.gentoo.org/~dilfridge/distfiles/${BRANDING} )"
|
||||
[[ -n ${PATCHSET} ]] && SRC_URI+=" https://dev.gentoo.org/~asturm/distfiles/${PATCHSET}"
|
||||
|
||||
# Split modules following git/tarballs; Core MUST be first!
|
||||
# Help is used for the image generator
|
||||
# Only release has the tarballs
|
||||
if [[ ${MY_PV} != *9999* ]]; then
|
||||
for i in ${DEV_URI}; do
|
||||
SRC_URI+=" ${i}/${PN}-${MY_PV}.tar.xz"
|
||||
SRC_URI+=" ${i}/${PN}-help-${MY_PV}.tar.xz"
|
||||
done
|
||||
unset i
|
||||
fi
|
||||
unset DEV_URI
|
||||
|
||||
# Really required addons
|
||||
# These are bundles that can't be removed for now due to huge patchsets.
|
||||
# If you want them gone, patches are welcome.
|
||||
ADDONS_SRC=(
|
||||
# QR code generating library for >=libreoffice-6.4
|
||||
"${ADDONS_URI}/QR-Code-generator-1.4.0.tar.gz"
|
||||
"java? ( ${ADDONS_URI}/17410483b5b5f267aa18b7e00b65e6e0-hsqldb_1_8_0.zip )"
|
||||
# no release for 8 years, should we package it?
|
||||
"libreoffice_extensions_wiki-publisher? ( ${ADDONS_URI}/a7983f859eafb2677d7ff386a023bc40-xsltml_2.1.2.zip )"
|
||||
# Does not build with 1.6 rhino at all
|
||||
"libreoffice_extensions_scripting-javascript? ( ${ADDONS_URI}/798b2ffdc8bcfe7bca2cf92b62caf685-rhino1_5R5.zip )"
|
||||
# requirement of rhino
|
||||
"libreoffice_extensions_scripting-javascript? ( ${ADDONS_URI}/35c94d2df8893241173de1d16b6034c0-swingExSrc.zip )"
|
||||
# not packageable
|
||||
"odk? ( http://download.go-oo.org/extern/185d60944ea767075d27247c3162b3bc-unowinreg.dll )"
|
||||
)
|
||||
SRC_URI+=" ${ADDONS_SRC[*]}"
|
||||
|
||||
unset ADDONS_URI
|
||||
unset ADDONS_SRC
|
||||
|
||||
# Extensions that need extra work:
|
||||
LO_EXTS="nlpsolver scripting-beanshell scripting-javascript wiki-publisher"
|
||||
|
||||
IUSE="accessibility bluetooth +branding coinmp +cups dbus debug eds firebird
|
||||
googledrive gstreamer +gtk kde ldap +mariadb odk pdfimport postgres test
|
||||
$(printf 'libreoffice_extensions_%s ' ${LO_EXTS})"
|
||||
|
||||
REQUIRED_USE="${PYTHON_REQUIRED_USE}
|
||||
bluetooth? ( dbus )
|
||||
libreoffice_extensions_nlpsolver? ( java )
|
||||
libreoffice_extensions_scripting-beanshell? ( java )
|
||||
libreoffice_extensions_scripting-javascript? ( java )
|
||||
libreoffice_extensions_wiki-publisher? ( java )
|
||||
"
|
||||
|
||||
RESTRICT="!test? ( test )"
|
||||
|
||||
LICENSE="|| ( LGPL-3 MPL-1.1 )"
|
||||
SLOT="0"
|
||||
|
||||
[[ ${MY_PV} == *9999* ]] || \
|
||||
KEYWORDS="amd64 ~arm ~arm64 ~ppc64 x86 ~amd64-linux ~x86-linux"
|
||||
|
||||
BDEPEND="
|
||||
dev-util/intltool
|
||||
sys-devel/bison
|
||||
sys-devel/flex
|
||||
sys-devel/gettext
|
||||
virtual/pkgconfig
|
||||
odk? ( >=app-doc/doxygen-1.8.4 )
|
||||
"
|
||||
COMMON_DEPEND="${PYTHON_DEPS}
|
||||
app-arch/unzip
|
||||
app-arch/zip
|
||||
app-crypt/gpgme[cxx]
|
||||
app-text/hunspell:=
|
||||
>=app-text/libabw-0.1.0
|
||||
>=app-text/libebook-0.1
|
||||
app-text/libepubgen
|
||||
>=app-text/libetonyek-0.1
|
||||
app-text/libexttextcat
|
||||
app-text/liblangtag
|
||||
>=app-text/libmspub-0.1.0
|
||||
>=app-text/libmwaw-0.3.1
|
||||
app-text/libnumbertext
|
||||
>=app-text/libodfgen-0.1.0
|
||||
app-text/libqxp
|
||||
app-text/libstaroffice
|
||||
app-text/libwpd:0.10[tools]
|
||||
app-text/libwpg:0.3
|
||||
>=app-text/libwps-0.4
|
||||
app-text/mythes
|
||||
>=dev-cpp/clucene-2.3.3.4-r2
|
||||
>=dev-cpp/libcmis-0.5.2
|
||||
dev-db/unixODBC
|
||||
dev-lang/perl
|
||||
>=dev-libs/boost-1.72.0:=[nls]
|
||||
dev-libs/expat
|
||||
dev-libs/hyphen
|
||||
dev-libs/icu:=
|
||||
dev-libs/libassuan
|
||||
dev-libs/libgpg-error
|
||||
>=dev-libs/liborcus-0.15.0
|
||||
dev-libs/librevenge
|
||||
dev-libs/libxml2
|
||||
dev-libs/libxslt
|
||||
dev-libs/nspr
|
||||
dev-libs/nss
|
||||
>=dev-libs/redland-1.0.16
|
||||
>=dev-libs/xmlsec-1.2.28[nss]
|
||||
media-gfx/fontforge
|
||||
media-gfx/graphite2
|
||||
media-libs/fontconfig
|
||||
media-libs/freetype:2
|
||||
>=media-libs/harfbuzz-0.9.42:=[graphite,icu]
|
||||
media-libs/lcms:2
|
||||
>=media-libs/libcdr-0.1.0
|
||||
>=media-libs/libepoxy-1.3.1[X]
|
||||
>=media-libs/libfreehand-0.1.0
|
||||
media-libs/libpagemaker
|
||||
>=media-libs/libpng-1.4:0=
|
||||
>=media-libs/libvisio-0.1.0
|
||||
media-libs/libzmf
|
||||
net-libs/neon
|
||||
net-misc/curl
|
||||
sci-mathematics/lpsolve
|
||||
sys-libs/zlib
|
||||
virtual/glu
|
||||
virtual/jpeg:0
|
||||
virtual/opengl
|
||||
x11-libs/cairo[X]
|
||||
x11-libs/libXinerama
|
||||
x11-libs/libXrandr
|
||||
x11-libs/libXrender
|
||||
accessibility? (
|
||||
$(python_gen_cond_dep 'dev-python/lxml[${PYTHON_MULTI_USEDEP}]')
|
||||
)
|
||||
bluetooth? (
|
||||
dev-libs/glib:2
|
||||
net-wireless/bluez
|
||||
)
|
||||
coinmp? ( sci-libs/coinor-mp )
|
||||
cups? ( net-print/cups )
|
||||
dbus? ( sys-apps/dbus )
|
||||
eds? (
|
||||
dev-libs/glib:2
|
||||
gnome-base/dconf
|
||||
gnome-extra/evolution-data-server
|
||||
)
|
||||
firebird? ( >=dev-db/firebird-3.0.2.32703.0-r1[server] )
|
||||
gstreamer? (
|
||||
media-libs/gstreamer:1.0
|
||||
media-libs/gst-plugins-base:1.0
|
||||
)
|
||||
gtk? (
|
||||
dev-libs/glib:2
|
||||
dev-libs/gobject-introspection
|
||||
gnome-base/dconf
|
||||
media-libs/mesa[egl]
|
||||
x11-libs/gtk+:3
|
||||
x11-libs/pango
|
||||
)
|
||||
kde? (
|
||||
dev-qt/qtcore:5
|
||||
dev-qt/qtgui:5
|
||||
dev-qt/qtwidgets:5
|
||||
dev-qt/qtx11extras:5
|
||||
kde-frameworks/kconfig:5
|
||||
kde-frameworks/kcoreaddons:5
|
||||
kde-frameworks/ki18n:5
|
||||
kde-frameworks/kio:5
|
||||
kde-frameworks/kwindowsystem:5
|
||||
)
|
||||
ldap? ( net-nds/openldap )
|
||||
libreoffice_extensions_scripting-beanshell? ( dev-java/bsh )
|
||||
libreoffice_extensions_scripting-javascript? ( dev-java/rhino:1.6 )
|
||||
mariadb? ( dev-db/mariadb-connector-c )
|
||||
!mariadb? ( dev-db/mysql-connector-c )
|
||||
pdfimport? ( app-text/poppler:=[cxx] )
|
||||
postgres? ( >=dev-db/postgresql-9.0:*[kerberos] )
|
||||
"
|
||||
# FIXME: cppunit should be moved to test conditional
|
||||
# after everything upstream is under gbuild
|
||||
# as dmake execute tests right away
|
||||
# tests apparently also need google-carlito-fonts (not packaged)
|
||||
DEPEND="${COMMON_DEPEND}
|
||||
>=dev-libs/libatomic_ops-7.2d
|
||||
dev-perl/Archive-Zip
|
||||
>=dev-util/cppunit-1.14.0
|
||||
>=dev-util/gperf-3.1
|
||||
dev-util/mdds:1/1.5
|
||||
media-libs/glm
|
||||
sys-devel/ucpp
|
||||
x11-base/xorg-proto
|
||||
x11-libs/libXt
|
||||
x11-libs/libXtst
|
||||
java? (
|
||||
dev-java/ant-core
|
||||
>=virtual/jdk-1.8
|
||||
)
|
||||
test? (
|
||||
app-crypt/gnupg
|
||||
dev-util/cppunit
|
||||
media-fonts/dejavu
|
||||
media-fonts/liberation-fonts
|
||||
)
|
||||
"
|
||||
RDEPEND="${COMMON_DEPEND}
|
||||
!app-office/libreoffice-bin
|
||||
!app-office/libreoffice-bin-debug
|
||||
!app-office/openoffice
|
||||
media-fonts/liberation-fonts
|
||||
|| ( x11-misc/xdg-utils kde-plasma/kde-cli-tools )
|
||||
java? ( >=virtual/jre-1.8 )
|
||||
kde? ( kde-frameworks/breeze-icons:* )
|
||||
"
|
||||
if [[ ${MY_PV} != *9999* ]] && [[ ${PV} != *_* ]]; then
|
||||
PDEPEND="=app-office/libreoffice-l10n-$(ver_cut 1-2)*"
|
||||
else
|
||||
# Translations are not reliable on live ebuilds
|
||||
# rather force people to use english only.
|
||||
PDEPEND="!app-office/libreoffice-l10n"
|
||||
fi
|
||||
|
||||
PATCHES=(
|
||||
# "${WORKDIR}"/${PATCHSET/.tar.xz/}
|
||||
|
||||
# not upstreamable stuff
|
||||
"${FILESDIR}/${PN}-5.4-system-pyuno.patch"
|
||||
"${FILESDIR}/${PN}-5.3.4.2-kioclient5.patch"
|
||||
"${FILESDIR}/${PN}-6.1-nomancompress.patch"
|
||||
|
||||
# git master
|
||||
"${FILESDIR}/${P}-boost-1.73.patch" # bug 721806
|
||||
|
||||
# TODO: upstream (for now taken from Arch Linux)
|
||||
"${FILESDIR}/${PN}-6.4.2.2-poppler-0.86.patch" # bug 711102
|
||||
)
|
||||
|
||||
S="${WORKDIR}/${PN}-${MY_PV}"
|
||||
|
||||
_check_reqs() {
|
||||
CHECKREQS_MEMORY="512M"
|
||||
if is-flagq "-g*" && ! is-flagq "-g*0" ; then
|
||||
CHECKREQS_DISK_BUILD="22G"
|
||||
else
|
||||
CHECKREQS_DISK_BUILD="6G"
|
||||
fi
|
||||
check-reqs_$1
|
||||
}
|
||||
|
||||
pkg_pretend() {
|
||||
if ! use java && ! use firebird; then
|
||||
ewarn "If you plan to use Base application you must enable either firebird or java."
|
||||
fi
|
||||
|
||||
use java || ewarn "Without java, several wizards are not going to be available."
|
||||
|
||||
[[ ${MERGE_TYPE} != binary ]] && _check_reqs pkg_pretend
|
||||
}
|
||||
|
||||
pkg_setup() {
|
||||
java-pkg-opt-2_pkg_setup
|
||||
python-single-r1_pkg_setup
|
||||
xdg_environment_reset
|
||||
|
||||
[[ ${MERGE_TYPE} != binary ]] && _check_reqs pkg_setup
|
||||
}
|
||||
|
||||
src_unpack() {
|
||||
default
|
||||
|
||||
if [[ ${MY_PV} = *9999* ]]; then
|
||||
local base_uri branch mypv
|
||||
base_uri="https://anongit.freedesktop.org/git"
|
||||
branch="master"
|
||||
mypv=${MY_PV/.9999}
|
||||
[[ ${mypv} != ${MY_PV} ]] && branch="${PN}-${mypv/./-}"
|
||||
git-r3_fetch "${base_uri}/${PN}/core" "refs/heads/${branch}"
|
||||
git-r3_checkout "${base_uri}/${PN}/core"
|
||||
LOCOREGIT_VERSION=${EGIT_VERSION}
|
||||
|
||||
git-r3_fetch "${base_uri}/${PN}/help" "refs/heads/master"
|
||||
git-r3_checkout "${base_uri}/${PN}/help" "helpcontent2" # doesn't match on help
|
||||
fi
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
|
||||
# sandbox violations on many systems, we don't need it. Bug #646406
|
||||
sed -i \
|
||||
-e "/KF5_CONFIG/s/kf5-config/no/" \
|
||||
configure.ac || die "Failed to disable kf5-config"
|
||||
|
||||
AT_M4DIR="m4" eautoreconf
|
||||
# hack in the autogen.sh
|
||||
touch autogen.lastrun
|
||||
|
||||
# system pyuno mess
|
||||
sed -i \
|
||||
-e "s:%eprefix%:${EPREFIX}:g" \
|
||||
-e "s:%libdir%:$(get_libdir):g" \
|
||||
pyuno/source/module/uno.py \
|
||||
pyuno/source/officehelper.py || die
|
||||
# sed in the tests
|
||||
sed -i \
|
||||
-e "s#all : build unitcheck#all : build#g" \
|
||||
solenv/gbuild/Module.mk || die
|
||||
sed -i \
|
||||
-e "s#check: dev-install subsequentcheck#check: unitcheck slowcheck dev-install subsequentcheck#g" \
|
||||
-e "s#Makefile.gbuild all slowcheck#Makefile.gbuild all#g" \
|
||||
Makefile.in || die
|
||||
|
||||
sed -i \
|
||||
-e "s,/usr/share/bash-completion/completions,$(get_bashcompdir)," \
|
||||
-e "s,\$INSTALLDIRNAME.sh,${PN}," \
|
||||
bin/distro-install-desktop-integration || die
|
||||
|
||||
if use branding; then
|
||||
# hack...
|
||||
mv -v "${WORKDIR}/branding-intro.png" "icon-themes/colibre/brand/intro.png" || die
|
||||
fi
|
||||
|
||||
# Don't list pdfimport support in desktop when built with none, bug # 605464
|
||||
if ! use pdfimport; then
|
||||
sed -i \
|
||||
-e ":MimeType: s:application/pdf;::" \
|
||||
-e ":Keywords: s:pdf;::" \
|
||||
sysui/desktop/menus/draw.desktop || die
|
||||
fi
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
# Set up Google API keys, see https://www.chromium.org/developers/how-tos/api-keys
|
||||
# Note: these are for Gentoo use ONLY. For your own distribution, please get
|
||||
# your own set of keys. Feel free to contact chromium@gentoo.org for more info.
|
||||
local google_default_client_id="329227923882.apps.googleusercontent.com"
|
||||
local google_default_client_secret="vgKG0NNv7GoDpbtoFNLxCUXu"
|
||||
|
||||
# optimization flags
|
||||
export GMAKE_OPTIONS="${MAKEOPTS}"
|
||||
# System python enablement:
|
||||
export PYTHON_CFLAGS=$(python_get_CFLAGS)
|
||||
export PYTHON_LIBS=$(python_get_LIBS)
|
||||
|
||||
if use kde; then
|
||||
export QT_SELECT=5 # bug 639620 needs proper fix though
|
||||
export QT5DIR="$(qt5_get_bindir)/../"
|
||||
export MOC5="$(qt5_get_bindir)/moc"
|
||||
fi
|
||||
|
||||
local gentoo_buildid="Gentoo official package"
|
||||
if [[ -n ${LOCOREGIT_VERSION} ]]; then
|
||||
gentoo_buildid+=" (from git: ${LOCOREGIT_VERSION})"
|
||||
fi
|
||||
|
||||
# system headers/libs/...: enforce using system packages
|
||||
# --disable-breakpad: requires not-yet-in-tree dev-utils/breakpad
|
||||
# --enable-cairo: ensure that cairo is always required
|
||||
# --enable-*-link: link to the library rather than just dlopen on runtime
|
||||
# --enable-release-build: build the libreoffice as release
|
||||
# --disable-fetch-external: prevent dowloading during compile phase
|
||||
# --enable-extension-integration: enable any extension integration support
|
||||
# --without-{fonts,myspell-dicts,ppsd}: prevent install of sys pkgs
|
||||
# --disable-report-builder: too much java packages pulled in without pkgs
|
||||
# --without-system-sane: just sane.h header that is used for scan in writer,
|
||||
# not linked or anything else, worthless to depend on
|
||||
# --disable-pdfium: not yet packaged
|
||||
# --without-system-qrencode: has no real build system and LO is the only user
|
||||
local myeconfargs=(
|
||||
--with-system-dicts
|
||||
--with-system-epoxy
|
||||
--with-system-headers
|
||||
--with-system-jars
|
||||
--with-system-libs
|
||||
--enable-build-opensymbol
|
||||
--enable-cairo-canvas
|
||||
--enable-largefile
|
||||
--enable-mergelibs
|
||||
--enable-neon
|
||||
--enable-python=system
|
||||
--enable-randr
|
||||
--enable-release-build
|
||||
--disable-breakpad
|
||||
--disable-bundle-mariadb
|
||||
--disable-ccache
|
||||
--disable-epm
|
||||
--disable-fetch-external
|
||||
--disable-gtk3-kde5
|
||||
--disable-online-update
|
||||
--disable-openssl
|
||||
--disable-pdfium
|
||||
--disable-report-builder
|
||||
--disable-vlc
|
||||
--with-build-version="${gentoo_buildid}"
|
||||
--enable-extension-integration
|
||||
--with-external-dict-dir="${EPREFIX}/usr/share/myspell"
|
||||
--with-external-hyph-dir="${EPREFIX}/usr/share/myspell"
|
||||
--with-external-thes-dir="${EPREFIX}/usr/share/myspell"
|
||||
--with-external-tar="${DISTDIR}"
|
||||
--with-lang=""
|
||||
--with-parallelism=$(makeopts_jobs)
|
||||
--with-system-ucpp
|
||||
--with-tls=nss
|
||||
--with-vendor="Gentoo Foundation"
|
||||
--with-x
|
||||
--without-fonts
|
||||
--without-myspell-dicts
|
||||
--with-help="html"
|
||||
--without-helppack-integration
|
||||
--with-system-gpgmepp
|
||||
--without-system-sane
|
||||
--without-system-qrcodegen
|
||||
$(use_enable bluetooth sdremote-bluetooth)
|
||||
$(use_enable coinmp)
|
||||
$(use_enable cups)
|
||||
$(use_enable dbus)
|
||||
$(use_enable debug)
|
||||
$(use_enable eds evolution2)
|
||||
$(use_enable firebird firebird-sdbc)
|
||||
$(use_enable gstreamer gstreamer-1-0)
|
||||
$(use_enable gtk gtk3)
|
||||
$(use_enable kde kf5)
|
||||
$(use_enable kde qt5)
|
||||
$(use_enable ldap)
|
||||
$(use_enable odk)
|
||||
$(use_enable pdfimport)
|
||||
$(use_enable postgres postgresql-sdbc)
|
||||
$(use_with accessibility lxml)
|
||||
$(use_with coinmp system-coinmp)
|
||||
$(use_with googledrive gdrive-client-id ${google_default_client_id})
|
||||
$(use_with googledrive gdrive-client-secret ${google_default_client_secret})
|
||||
$(use_with java)
|
||||
$(use_with odk doxygen)
|
||||
)
|
||||
|
||||
if use eds || use gtk; then
|
||||
myeconfargs+=( --enable-dconf --enable-gio )
|
||||
else
|
||||
myeconfargs+=( --disable-dconf --disable-gio )
|
||||
fi
|
||||
|
||||
# libreoffice extensions handling
|
||||
for lo_xt in ${LO_EXTS}; do
|
||||
if [[ "${lo_xt}" == "scripting-beanshell" || "${lo_xt}" == "scripting-javascript" ]]; then
|
||||
myeconfargs+=( $(use_enable libreoffice_extensions_${lo_xt} ${lo_xt}) )
|
||||
else
|
||||
myeconfargs+=( $(use_enable libreoffice_extensions_${lo_xt} ext-${lo_xt}) )
|
||||
fi
|
||||
done
|
||||
|
||||
if use java; then
|
||||
# hsqldb: system one is too new
|
||||
myeconfargs+=(
|
||||
--without-junit
|
||||
--without-system-hsqldb
|
||||
--with-ant-home="${ANT_HOME}"
|
||||
--with-jdk-home=$(java-config --jdk-home 2>/dev/null)
|
||||
--with-jvm-path="${EPREFIX}/usr/lib/"
|
||||
)
|
||||
|
||||
use libreoffice_extensions_scripting-beanshell && \
|
||||
myeconfargs+=( --with-beanshell-jar=$(java-pkg_getjar bsh bsh.jar) )
|
||||
|
||||
use libreoffice_extensions_scripting-javascript && \
|
||||
myeconfargs+=( --with-rhino-jar=$(java-pkg_getjar rhino-1.6 js.jar) )
|
||||
fi
|
||||
|
||||
is-flagq "-flto*" && myeconfargs+=( --enable-lto )
|
||||
|
||||
MARIADBCONFIG="$(type -p $(usex mariadb mariadb mysql)_config)" \
|
||||
econf "${myeconfargs[@]}"
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
# more and more LO stuff tries to use OpenGL, including tests during build
|
||||
# bug 501508, bug 540624, bug 545974 and probably more
|
||||
addpredict /dev/dri
|
||||
addpredict /dev/ati
|
||||
addpredict /dev/nvidiactl
|
||||
|
||||
local target
|
||||
use test && target="build" || target="build-nocheck"
|
||||
|
||||
# this is not a proper make script
|
||||
make ${target} || die
|
||||
}
|
||||
|
||||
src_test() {
|
||||
make unitcheck || die
|
||||
make slowcheck || die
|
||||
}
|
||||
|
||||
src_install() {
|
||||
# This is not Makefile so no buildserver
|
||||
emake DESTDIR="${D}" distro-pack-install -o build -o check
|
||||
|
||||
# bug 593514
|
||||
if use gtk; then
|
||||
dosym libreoffice/program/liblibreofficekitgtk.so \
|
||||
/usr/$(get_libdir)/liblibreofficekitgtk.so
|
||||
fi
|
||||
|
||||
# bash completion aliases
|
||||
bashcomp_alias \
|
||||
libreoffice \
|
||||
unopkg loimpress lobase localc lodraw lomath lowriter lofromtemplate loweb loffice
|
||||
|
||||
if use branding; then
|
||||
insinto /usr/$(get_libdir)/${PN}/program
|
||||
newins "${WORKDIR}/branding-sofficerc" sofficerc
|
||||
dodir /etc/env.d
|
||||
echo "CONFIG_PROTECT=/usr/$(get_libdir)/${PN}/program/sofficerc" > "${ED}"/etc/env.d/99${PN} || die
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
xdg_icon_cache_update
|
||||
xdg_desktop_database_update
|
||||
xdg_mimeinfo_database_update
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
xdg_icon_cache_update
|
||||
xdg_desktop_database_update
|
||||
xdg_mimeinfo_database_update
|
||||
}
|
Binary file not shown.
@ -1,2 +1,3 @@
|
||||
DIST repoman-2.3.23.tar.bz2 87108 BLAKE2B c1190433bd8aedf59e1ddf192dd14cca13e3bdae7367decd6bf64a79021f54a63f21ec49d5737b90c46be3894f4d3ff11bf5bd2868c9ebf65e44b4eb3bb4eee0 SHA512 9d01fadc5820501a9bfb9c1b6d9634ecbc14aacdc448bb440d1e37d47f7e4bcdea8269f8ba90e3783d84f31121870a9d7b165f58b78f0d0f0f4e822a25687d1b
|
||||
DIST repoman-3.0.1.tar.bz2 88134 BLAKE2B 270eb8c6220360d32076a402795df9bb1c7ce7ca6509707fc2b9307ca94b59131da3100b51519bed2f76dde703782db6ed74a052b51ea48c690e6558ceb9d24f SHA512 2da130a5dba547390151620f7e944de45e0a880165ab138000870661778f54c6f6c2e0eb61bab961a0cf17642a96fc8a2e5e508bb16cc1adfcf103074838196c
|
||||
DIST repoman-3.0.2.tar.bz2 88258 BLAKE2B 32c4d6750fd225cf9fc071be0ffbb38563ffdaf50f1f1ac7247ce3733bd781cd699052101df8b6565fd3d32ec6d9a54efb611b815a722b7954d8100ce01de146 SHA512 fd5b4549a0b108ed1ad37fc0766fc73db127bba8b023a74566ee0167e2a9c56c8597b83ead16522aaf84f158a9a5d0d59e4b5bcc908e6024724c087c837e1fa2
|
||||
|
@ -0,0 +1,64 @@
|
||||
# Copyright 1999-2020 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
DISTUTILS_USE_SETUPTOOLS=no
|
||||
PYTHON_COMPAT=( python3_{6..9} pypy3 )
|
||||
PYTHON_REQ_USE='bzip2(+)'
|
||||
|
||||
inherit distutils-r1
|
||||
|
||||
if [[ ${PV} == *9999 ]]; then
|
||||
inherit git-r3
|
||||
EGIT_REPO_URI="https://anongit.gentoo.org/git/proj/portage.git"
|
||||
S="${WORKDIR}/${P}/repoman"
|
||||
else
|
||||
SRC_URI="https://dev.gentoo.org/~zmedico/portage/archives/${P}.tar.bz2"
|
||||
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86 ~ppc-aix ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
|
||||
fi
|
||||
|
||||
DESCRIPTION="Repoman is a Quality Assurance tool for Gentoo ebuilds"
|
||||
HOMEPAGE="https://wiki.gentoo.org/wiki/Project:Portage"
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
IUSE=""
|
||||
|
||||
RDEPEND="
|
||||
>=sys-apps/portage-3.0.4[${PYTHON_USEDEP}]
|
||||
>=dev-python/lxml-3.6.0[${PYTHON_USEDEP}]
|
||||
dev-python/pyyaml[${PYTHON_USEDEP}]
|
||||
"
|
||||
DEPEND="${RDEPEND}"
|
||||
|
||||
python_test() {
|
||||
esetup.py test
|
||||
}
|
||||
|
||||
python_install() {
|
||||
# Install sbin scripts to bindir for python-exec linking
|
||||
# they will be relocated in pkg_preinst()
|
||||
distutils-r1_python_install \
|
||||
--system-prefix="${EPREFIX}/usr" \
|
||||
--bindir="$(python_get_scriptdir)" \
|
||||
--docdir="${EPREFIX}/usr/share/doc/${PF}" \
|
||||
--htmldir="${EPREFIX}/usr/share/doc/${PF}/html" \
|
||||
--sbindir="$(python_get_scriptdir)" \
|
||||
--sysconfdir="${EPREFIX}/etc" \
|
||||
"${@}"
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
if [[ -z {REPLACING_VERSIONS} ]]; then
|
||||
elog ""
|
||||
elog "This release of repoman is from the new portage/repoman split"
|
||||
elog "release code base."
|
||||
elog "This new repoman code base is still being developed. So its API's"
|
||||
elog "are not to be considered stable and are subject to change."
|
||||
elog "The code released has been tested and considered ready for use."
|
||||
elog "This however does not guarantee it to be completely bug free."
|
||||
elog "Please report any bugs you may encounter."
|
||||
elog ""
|
||||
fi
|
||||
}
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
@ -1,149 +0,0 @@
|
||||
# @GENTOO_PORTAGE_EPREFIX@/etc/mysql/my.cnf: The global mysql configuration file.
|
||||
|
||||
# The following options will be passed to all MySQL clients
|
||||
[client]
|
||||
#password = your_password
|
||||
port = 3306
|
||||
socket = @GENTOO_PORTAGE_EPREFIX@/var/run/mysqld/mysqld.sock
|
||||
|
||||
[mysql]
|
||||
character-sets-dir=@GENTOO_PORTAGE_EPREFIX@/usr/share/mariadb/charsets
|
||||
default-character-set=utf8
|
||||
|
||||
[mysqladmin]
|
||||
character-sets-dir=@GENTOO_PORTAGE_EPREFIX@/usr/share/mariadb/charsets
|
||||
default-character-set=utf8
|
||||
|
||||
[mysqlcheck]
|
||||
character-sets-dir=@GENTOO_PORTAGE_EPREFIX@/usr/share/mariadb/charsets
|
||||
default-character-set=utf8
|
||||
|
||||
[mysqldump]
|
||||
character-sets-dir=@GENTOO_PORTAGE_EPREFIX@/usr/share/mariadb/charsets
|
||||
default-character-set=utf8
|
||||
|
||||
[mysqlimport]
|
||||
character-sets-dir=@GENTOO_PORTAGE_EPREFIX@/usr/share/mariadb/charsets
|
||||
default-character-set=utf8
|
||||
|
||||
[mysqlshow]
|
||||
character-sets-dir=@GENTOO_PORTAGE_EPREFIX@/usr/share/mariadb/charsets
|
||||
default-character-set=utf8
|
||||
|
||||
[myisamchk]
|
||||
character-sets-dir=@GENTOO_PORTAGE_EPREFIX@/usr/share/mariadb/charsets
|
||||
|
||||
[myisampack]
|
||||
character-sets-dir=@GENTOO_PORTAGE_EPREFIX@/usr/share/mariadb/charsets
|
||||
|
||||
# use [safe_mysqld] with mysql-3
|
||||
[mysqld_safe]
|
||||
err-log = @GENTOO_PORTAGE_EPREFIX@/var/log/mysql/mysql.err
|
||||
|
||||
# add a section [mysqld-4.1] or [mysqld-5.0] for specific configurations
|
||||
[mysqld]
|
||||
character-set-server = utf8
|
||||
user = mysql
|
||||
port = 3306
|
||||
socket = @GENTOO_PORTAGE_EPREFIX@/var/run/mysqld/mysqld.sock
|
||||
pid-file = @GENTOO_PORTAGE_EPREFIX@/var/run/mysqld/mysqld.pid
|
||||
log-error = @GENTOO_PORTAGE_EPREFIX@/var/log/mysql/mysqld.err
|
||||
basedir = @GENTOO_PORTAGE_EPREFIX@/usr
|
||||
datadir = @DATADIR@
|
||||
skip-external-locking
|
||||
key_buffer_size = 16M
|
||||
max_allowed_packet = 1M
|
||||
table_open_cache = 64
|
||||
sort_buffer_size = 512K
|
||||
net_buffer_length = 8K
|
||||
read_buffer_size = 256K
|
||||
read_rnd_buffer_size = 512K
|
||||
myisam_sort_buffer_size = 8M
|
||||
lc_messages_dir = @GENTOO_PORTAGE_EPREFIX@/usr/share/mariadb
|
||||
#Set this to your desired error message language
|
||||
lc_messages = en_US
|
||||
|
||||
# security:
|
||||
# using "localhost" in connects uses sockets by default
|
||||
# skip-networking
|
||||
bind-address = 127.0.0.1
|
||||
|
||||
log-bin
|
||||
server-id = 1
|
||||
|
||||
# point the following paths to different dedicated disks
|
||||
tmpdir = @GENTOO_PORTAGE_EPREFIX@/tmp/
|
||||
#log-update = @GENTOO_PORTAGE_EPREFIX@/path-to-dedicated-directory/hostname
|
||||
|
||||
# you need the debug USE flag enabled to use the following directives,
|
||||
# if needed, uncomment them, start the server and issue
|
||||
# #tail -f @GENTOO_PORTAGE_EPREFIX@/tmp/mysqld.sql @GENTOO_PORTAGE_EPREFIX@/tmp/mysqld.trace
|
||||
# this will show you *exactly* what's happening in your server ;)
|
||||
|
||||
#log = @GENTOO_PORTAGE_EPREFIX@/tmp/mysqld.sql
|
||||
#gdb
|
||||
#debug = d:t:i:o,/tmp/mysqld.trace
|
||||
#one-thread
|
||||
|
||||
# the following is the InnoDB configuration
|
||||
# if you wish to disable innodb instead
|
||||
# uncomment just the next line
|
||||
#skip-innodb
|
||||
#
|
||||
# the rest of the innodb config follows:
|
||||
# don't eat too much memory, we're trying to be safe on 64Mb boxes
|
||||
# you might want to bump this up a bit on boxes with more RAM
|
||||
innodb_buffer_pool_size = 16M
|
||||
# this is the default, increase it if you have lots of tables
|
||||
innodb_additional_mem_pool_size = 2M
|
||||
#
|
||||
# i'd like to use @GENTOO_PORTAGE_EPREFIX@/var/lib/mysql/innodb, but that is seen as a database :-(
|
||||
# and upstream wants things to be under @GENTOO_PORTAGE_EPREFIX@/var/lib/mysql/, so that's the route
|
||||
# we have to take for the moment
|
||||
#innodb_data_home_dir = @GENTOO_PORTAGE_EPREFIX@/var/lib/mysql/
|
||||
#innodb_log_arch_dir = @GENTOO_PORTAGE_EPREFIX@/var/lib/mysql/
|
||||
#innodb_log_group_home_dir = @GENTOO_PORTAGE_EPREFIX@/var/lib/mysql/
|
||||
# you may wish to change this size to be more suitable for your system
|
||||
# the max is there to avoid run-away growth on your machine
|
||||
innodb_data_file_path = ibdata1:10M:autoextend:max:128M
|
||||
# we keep this at around 25% of of innodb_buffer_pool_size
|
||||
# sensible values range from 1MB to (1/innodb_log_files_in_group*innodb_buffer_pool_size)
|
||||
innodb_log_file_size = 5M
|
||||
# this is the default, increase it if you have very large transactions going on
|
||||
innodb_log_buffer_size = 8M
|
||||
# this is the default and won't hurt you
|
||||
# you shouldn't need to tweak it
|
||||
innodb_log_files_in_group=2
|
||||
# see the innodb config docs, the other options are not always safe
|
||||
innodb_flush_log_at_trx_commit = 1
|
||||
innodb_lock_wait_timeout = 50
|
||||
innodb_file_per_table
|
||||
|
||||
# Uncomment this to get FEDERATED engine support
|
||||
#plugin-load=federated=ha_federated.so
|
||||
loose-federated
|
||||
|
||||
[mysqldump]
|
||||
quick
|
||||
max_allowed_packet = 16M
|
||||
|
||||
[mysql]
|
||||
# uncomment the next directive if you are not familiar with SQL
|
||||
#safe-updates
|
||||
|
||||
[isamchk]
|
||||
key_buffer_size = 20M
|
||||
sort_buffer_size = 20M
|
||||
read_buffer = 2M
|
||||
write_buffer = 2M
|
||||
|
||||
[myisamchk]
|
||||
key_buffer_size = 20M
|
||||
sort_buffer_size = 20M
|
||||
read_buffer_size = 2M
|
||||
write_buffer_size = 2M
|
||||
|
||||
[mysqlhotcopy]
|
||||
interactive-timeout
|
||||
|
||||
[mariadb]
|
@ -1,142 +0,0 @@
|
||||
# @GENTOO_PORTAGE_EPREFIX@/etc/mysql/my.cnf: The global mysql configuration file.
|
||||
|
||||
# The following options will be passed to all MySQL clients
|
||||
[client]
|
||||
#password = your_password
|
||||
port = 3306
|
||||
socket = @GENTOO_PORTAGE_EPREFIX@/var/run/mysqld/mysqld.sock
|
||||
|
||||
[mysql]
|
||||
character-sets-dir=@GENTOO_PORTAGE_EPREFIX@/usr/share/mariadb/charsets
|
||||
default-character-set=utf8
|
||||
|
||||
[mysqladmin]
|
||||
character-sets-dir=@GENTOO_PORTAGE_EPREFIX@/usr/share/mariadb/charsets
|
||||
default-character-set=utf8
|
||||
|
||||
[mysqlcheck]
|
||||
character-sets-dir=@GENTOO_PORTAGE_EPREFIX@/usr/share/mariadb/charsets
|
||||
default-character-set=utf8
|
||||
|
||||
[mysqldump]
|
||||
character-sets-dir=@GENTOO_PORTAGE_EPREFIX@/usr/share/mariadb/charsets
|
||||
default-character-set=utf8
|
||||
|
||||
[mysqlimport]
|
||||
character-sets-dir=@GENTOO_PORTAGE_EPREFIX@/usr/share/mariadb/charsets
|
||||
default-character-set=utf8
|
||||
|
||||
[mysqlshow]
|
||||
character-sets-dir=@GENTOO_PORTAGE_EPREFIX@/usr/share/mariadb/charsets
|
||||
default-character-set=utf8
|
||||
|
||||
[myisamchk]
|
||||
character-sets-dir=@GENTOO_PORTAGE_EPREFIX@/usr/share/mariadb/charsets
|
||||
|
||||
[myisampack]
|
||||
character-sets-dir=@GENTOO_PORTAGE_EPREFIX@/usr/share/mariadb/charsets
|
||||
|
||||
# use [safe_mysqld] with mysql-3
|
||||
[mysqld_safe]
|
||||
err-log = @GENTOO_PORTAGE_EPREFIX@/var/log/mysql/mysql.err
|
||||
|
||||
# add a section [mysqld-4.1] or [mysqld-5.0] for specific configurations
|
||||
[mysqld]
|
||||
character-set-server = utf8
|
||||
user = mysql
|
||||
port = 3306
|
||||
socket = @GENTOO_PORTAGE_EPREFIX@/var/run/mysqld/mysqld.sock
|
||||
pid-file = @GENTOO_PORTAGE_EPREFIX@/var/run/mysqld/mysqld.pid
|
||||
log-error = @GENTOO_PORTAGE_EPREFIX@/var/log/mysql/mysqld.err
|
||||
basedir = @GENTOO_PORTAGE_EPREFIX@/usr
|
||||
datadir = @DATADIR@
|
||||
skip-external-locking
|
||||
key_buffer_size = 16M
|
||||
max_allowed_packet = 4M
|
||||
table_open_cache = 400
|
||||
sort_buffer_size = 512K
|
||||
net_buffer_length = 16K
|
||||
read_buffer_size = 256K
|
||||
read_rnd_buffer_size = 512K
|
||||
myisam_sort_buffer_size = 8M
|
||||
lc_messages_dir = @GENTOO_PORTAGE_EPREFIX@/usr/share/mariadb
|
||||
#Set this to your desired error message language
|
||||
lc_messages = en_US
|
||||
|
||||
# security:
|
||||
# using "localhost" in connects uses sockets by default
|
||||
# skip-networking
|
||||
bind-address = 127.0.0.1
|
||||
|
||||
log-bin
|
||||
server-id = 1
|
||||
|
||||
# point the following paths to different dedicated disks
|
||||
tmpdir = @GENTOO_PORTAGE_EPREFIX@/tmp/
|
||||
#log-update = @GENTOO_PORTAGE_EPREFIX@/path-to-dedicated-directory/hostname
|
||||
|
||||
# you need the debug USE flag enabled to use the following directives,
|
||||
# if needed, uncomment them, start the server and issue
|
||||
# #tail -f @GENTOO_PORTAGE_EPREFIX@/tmp/mysqld.sql @GENTOO_PORTAGE_EPREFIX@/tmp/mysqld.trace
|
||||
# this will show you *exactly* what's happening in your server ;)
|
||||
|
||||
#log = @GENTOO_PORTAGE_EPREFIX@/tmp/mysqld.sql
|
||||
#gdb
|
||||
#debug = d:t:i:o,/tmp/mysqld.trace
|
||||
#one-thread
|
||||
|
||||
# the rest of the innodb config follows:
|
||||
# don't eat too much memory, we're trying to be safe on 64Mb boxes
|
||||
# you might want to bump this up a bit on boxes with more RAM
|
||||
innodb_buffer_pool_size = 128M
|
||||
#
|
||||
# i'd like to use @GENTOO_PORTAGE_EPREFIX@/var/lib/mysql/innodb, but that is seen as a database :-(
|
||||
# and upstream wants things to be under @GENTOO_PORTAGE_EPREFIX@/var/lib/mysql/, so that's the route
|
||||
# we have to take for the moment
|
||||
#innodb_data_home_dir = @GENTOO_PORTAGE_EPREFIX@/var/lib/mysql/
|
||||
#innodb_log_arch_dir = @GENTOO_PORTAGE_EPREFIX@/var/lib/mysql/
|
||||
#innodb_log_group_home_dir = @GENTOO_PORTAGE_EPREFIX@/var/lib/mysql/
|
||||
# you may wish to change this size to be more suitable for your system
|
||||
# the max is there to avoid run-away growth on your machine
|
||||
innodb_data_file_path = ibdata1:10M:autoextend:max:128M
|
||||
# we keep this at around 25% of of innodb_buffer_pool_size
|
||||
# sensible values range from 1MB to (1/innodb_log_files_in_group*innodb_buffer_pool_size)
|
||||
innodb_log_file_size = 48M
|
||||
# this is the default, increase it if you have very large transactions going on
|
||||
innodb_log_buffer_size = 8M
|
||||
# this is the default and won't hurt you
|
||||
# you shouldn't need to tweak it
|
||||
innodb_log_files_in_group=2
|
||||
# see the innodb config docs, the other options are not always safe
|
||||
innodb_flush_log_at_trx_commit = 1
|
||||
innodb_lock_wait_timeout = 50
|
||||
innodb_file_per_table
|
||||
|
||||
# Uncomment this to get FEDERATED engine support
|
||||
#plugin-load=federated=ha_federated.so
|
||||
loose-federated
|
||||
|
||||
[mysqldump]
|
||||
quick
|
||||
max_allowed_packet = 16M
|
||||
|
||||
[mysql]
|
||||
# uncomment the next directive if you are not familiar with SQL
|
||||
#safe-updates
|
||||
|
||||
[isamchk]
|
||||
key_buffer_size = 20M
|
||||
sort_buffer_size = 20M
|
||||
read_buffer = 2M
|
||||
write_buffer = 2M
|
||||
|
||||
[myisamchk]
|
||||
key_buffer_size = 20M
|
||||
sort_buffer_size = 20M
|
||||
read_buffer_size = 2M
|
||||
write_buffer_size = 2M
|
||||
|
||||
[mysqlhotcopy]
|
||||
interactive-timeout
|
||||
|
||||
[mariadb]
|
@ -1,925 +0,0 @@
|
||||
# Copyright 1999-2020 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI="7"
|
||||
SUBSLOT="18"
|
||||
|
||||
JAVA_PKG_OPT_USE="jdbc"
|
||||
|
||||
inherit eutils systemd flag-o-matic prefix toolchain-funcs \
|
||||
multiprocessing java-pkg-opt-2 cmake multilib-build
|
||||
|
||||
# Patch version
|
||||
PATCH_SET="https://dev.gentoo.org/~whissi/dist/${PN}/${PN}-10.1.46-patches-01.tar.xz"
|
||||
|
||||
SRC_URI="https://downloads.mariadb.org/interstitial/${P}/source/${P}.tar.gz
|
||||
${PATCH_SET}"
|
||||
|
||||
HOMEPAGE="https://mariadb.org/"
|
||||
DESCRIPTION="An enhanced, drop-in replacement for MySQL"
|
||||
LICENSE="GPL-2"
|
||||
SLOT="10.1/${SUBSLOT:-0}"
|
||||
IUSE="+backup bindist client-libs cracklib debug extraengine galera jdbc jemalloc kerberos
|
||||
innodb-lz4 innodb-lzo innodb-snappy latin1 libressl mroonga numa odbc oqgraph pam
|
||||
+perl profiling selinux +server sphinx sst-rsync sst-mariabackup sst-xtrabackup
|
||||
systemd systemtap static static-libs tcmalloc test tokudb xml yassl"
|
||||
|
||||
# Tests always fail when libressl is enabled due to hard-coded ciphers in the tests
|
||||
RESTRICT="!bindist? ( bindist ) libressl? ( test ) !test? ( test )"
|
||||
|
||||
REQUIRED_USE="jdbc? ( extraengine server !static )
|
||||
server? ( tokudb? ( jemalloc !tcmalloc ) )
|
||||
?? ( tcmalloc jemalloc )
|
||||
static? ( yassl !pam )"
|
||||
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~x64-solaris ~x86-solaris"
|
||||
|
||||
# Shorten the path because the socket path length must be shorter than 107 chars
|
||||
# and we will run a mysql server during test phase
|
||||
S="${WORKDIR}/mysql"
|
||||
|
||||
# Be warned, *DEPEND are version-dependant
|
||||
# These are used for both runtime and compiletime
|
||||
COMMON_DEPEND="
|
||||
kernel_linux? (
|
||||
sys-process/procps:0=
|
||||
dev-libs/libaio:0=
|
||||
)
|
||||
>=sys-apps/sed-4
|
||||
>=sys-apps/texinfo-4.7-r1
|
||||
jemalloc? ( dev-libs/jemalloc:0= )
|
||||
tcmalloc? ( dev-util/google-perftools:0= )
|
||||
systemtap? ( >=dev-util/systemtap-1.3:0= )
|
||||
>=sys-libs/zlib-1.2.3:0=
|
||||
kerberos? ( virtual/krb5 )
|
||||
!yassl? (
|
||||
!libressl? ( dev-libs/openssl:0= !>=dev-libs/openssl-1.1 )
|
||||
libressl? ( dev-libs/libressl:0= )
|
||||
)
|
||||
sys-libs/ncurses:0=
|
||||
!bindist? (
|
||||
sys-libs/binutils-libs:0=
|
||||
>=sys-libs/readline-4.1:0=
|
||||
)
|
||||
server? (
|
||||
backup? ( app-arch/libarchive:0= )
|
||||
cracklib? ( sys-libs/cracklib:0= )
|
||||
extraengine? (
|
||||
odbc? ( dev-db/unixODBC:0= )
|
||||
xml? ( dev-libs/libxml2:2= )
|
||||
sys-libs/zlib[minizip]
|
||||
)
|
||||
innodb-lz4? ( app-arch/lz4 )
|
||||
innodb-lzo? ( dev-libs/lzo )
|
||||
innodb-snappy? ( app-arch/snappy )
|
||||
mroonga? ( app-text/groonga-normalizer-mysql >=app-text/groonga-7.0.4 )
|
||||
numa? ( sys-process/numactl )
|
||||
oqgraph? ( >=dev-libs/boost-1.40.0:0= dev-libs/judy:0= )
|
||||
pam? ( sys-libs/pam:0= )
|
||||
systemd? ( sys-apps/systemd:= )
|
||||
tokudb? ( app-arch/snappy )
|
||||
)
|
||||
>=dev-libs/libpcre-8.41-r1:3=
|
||||
!client-libs? ( dev-db/mysql-connector-c[${MULTILIB_USEDEP},static-libs?] )
|
||||
"
|
||||
BDEPEND="virtual/yacc
|
||||
|| ( >=sys-devel/gcc-3.4.6 >=sys-devel/gcc-apple-4.0 )
|
||||
"
|
||||
DEPEND="static? ( sys-libs/ncurses[static-libs] )
|
||||
server? (
|
||||
extraengine? ( jdbc? ( >=virtual/jdk-1.6 ) )
|
||||
test? ( acct-group/mysql acct-user/mysql )
|
||||
)
|
||||
${COMMON_DEPEND}"
|
||||
RDEPEND="selinux? ( sec-policy/selinux-mysql )
|
||||
client-libs? ( !dev-db/mysql-connector-c )
|
||||
!dev-db/mysql !dev-db/mariadb-galera !dev-db/percona-server !dev-db/mysql-cluster
|
||||
!dev-db/mariadb:0
|
||||
!dev-db/mariadb:5.5
|
||||
!dev-db/mariadb:10.2
|
||||
!dev-db/mariadb:10.3
|
||||
!dev-db/mariadb:10.4
|
||||
!dev-db/mariadb:10.5
|
||||
${COMMON_DEPEND}
|
||||
server? (
|
||||
galera? (
|
||||
sys-apps/iproute2
|
||||
=sys-cluster/galera-25*
|
||||
sst-rsync? ( sys-process/lsof )
|
||||
sst-mariabackup? ( net-misc/socat[ssl] )
|
||||
sst-xtrabackup? ( net-misc/socat[ssl] )
|
||||
)
|
||||
!prefix? ( dev-db/mysql-init-scripts acct-group/mysql acct-user/mysql )
|
||||
extraengine? ( jdbc? ( >=virtual/jre-1.6 ) )
|
||||
)
|
||||
perl? (
|
||||
!dev-db/mytop
|
||||
virtual/perl-Getopt-Long
|
||||
dev-perl/TermReadKey
|
||||
virtual/perl-Term-ANSIColor
|
||||
virtual/perl-Time-HiRes
|
||||
)
|
||||
"
|
||||
# For other stuff to bring us in
|
||||
# dev-perl/DBD-mysql is needed by some scripts installed by MySQL
|
||||
# percona-xtrabackup-bin causes a circular dependency if DBD-mysql is not already installed
|
||||
PDEPEND="perl? ( >=dev-perl/DBD-mysql-2.9004 )
|
||||
server? ( galera? ( sst-xtrabackup? ( || ( >=dev-db/percona-xtrabackup-bin-2.2.4 dev-db/percona-xtrabackup ) ) ) )"
|
||||
|
||||
mysql_init_vars() {
|
||||
MY_SHAREDSTATEDIR=${MY_SHAREDSTATEDIR="${EPREFIX}/usr/share/mariadb"}
|
||||
MY_SYSCONFDIR=${MY_SYSCONFDIR="${EPREFIX}/etc/mysql"}
|
||||
MY_LOCALSTATEDIR=${MY_LOCALSTATEDIR="${EPREFIX}/var/lib/mysql"}
|
||||
MY_LOGDIR=${MY_LOGDIR="${EPREFIX}/var/log/mysql"}
|
||||
|
||||
if [[ -z "${MY_DATADIR}" ]] ; then
|
||||
MY_DATADIR=""
|
||||
if [[ -f "${MY_SYSCONFDIR}/my.cnf" ]] ; then
|
||||
MY_DATADIR=$(my_print_defaults mysqld 2>/dev/null \
|
||||
| sed -ne '/datadir/s|^--datadir=||p' \
|
||||
| tail -n1)
|
||||
if [[ -z "${MY_DATADIR}" ]] ; then
|
||||
MY_DATADIR=$(grep ^datadir "${MY_SYSCONFDIR}/my.cnf" \
|
||||
| sed -e 's/.*=\s*//' \
|
||||
| tail -n1)
|
||||
fi
|
||||
fi
|
||||
if [[ -z "${MY_DATADIR}" ]] ; then
|
||||
MY_DATADIR="${MY_LOCALSTATEDIR}"
|
||||
einfo "Using default MY_DATADIR"
|
||||
fi
|
||||
elog "MySQL MY_DATADIR is ${MY_DATADIR}"
|
||||
|
||||
if [[ -z "${PREVIOUS_DATADIR}" ]] ; then
|
||||
if [[ -e "${MY_DATADIR}" ]] ; then
|
||||
# If you get this and you're wondering about it, see bug #207636
|
||||
elog "MySQL datadir found in ${MY_DATADIR}"
|
||||
elog "A new one will not be created."
|
||||
PREVIOUS_DATADIR="yes"
|
||||
else
|
||||
PREVIOUS_DATADIR="no"
|
||||
fi
|
||||
export PREVIOUS_DATADIR
|
||||
fi
|
||||
else
|
||||
if [[ ${EBUILD_PHASE} == "config" ]]; then
|
||||
local new_MY_DATADIR
|
||||
new_MY_DATADIR=$(my_print_defaults mysqld 2>/dev/null \
|
||||
| sed -ne '/datadir/s|^--datadir=||p' \
|
||||
| tail -n1)
|
||||
|
||||
if [[ ( -n "${new_MY_DATADIR}" ) && ( "${new_MY_DATADIR}" != "${MY_DATADIR}" ) ]]; then
|
||||
ewarn "MySQL MY_DATADIR has changed"
|
||||
ewarn "from ${MY_DATADIR}"
|
||||
ewarn "to ${new_MY_DATADIR}"
|
||||
MY_DATADIR="${new_MY_DATADIR}"
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
|
||||
export MY_SHAREDSTATEDIR MY_SYSCONFDIR
|
||||
export MY_LOCALSTATEDIR MY_LOGDIR
|
||||
export MY_DATADIR
|
||||
}
|
||||
|
||||
pkg_setup() {
|
||||
if [[ ${MERGE_TYPE} != binary ]] ; then
|
||||
local GCC_MAJOR_SET=$(gcc-major-version)
|
||||
local GCC_MINOR_SET=$(gcc-minor-version)
|
||||
|
||||
if use tokudb && [[ ${GCC_MAJOR_SET} -lt 4 || \
|
||||
${GCC_MAJOR_SET} -eq 4 && ${GCC_MINOR_SET} -lt 7 ]] ; then
|
||||
eerror "${PN} with tokudb needs to be built with gcc-4.7 or later."
|
||||
eerror "Please use gcc-config to switch to gcc-4.7 or later version."
|
||||
die
|
||||
fi
|
||||
|
||||
# Bug 565584. InnoDB now requires atomic functions introduced with gcc-4.7 on
|
||||
# non x86{,_64} arches
|
||||
if ! use amd64 && ! use x86 && [[ ${GCC_MAJOR_SET} -lt 4 || \
|
||||
${GCC_MAJOR_SET} -eq 4 && ${GCC_MINOR_SET} -lt 7 ]] ; then
|
||||
eerror "${PN} needs to be built with gcc-4.7 or later."
|
||||
eerror "Please use gcc-config to switch to gcc-4.7 or later version."
|
||||
die
|
||||
fi
|
||||
|
||||
if has test ${FEATURES} ; then
|
||||
# Bug #213475 - MySQL _will_ object strenuously if your machine is named
|
||||
# localhost. Also causes weird failures.
|
||||
[[ "${HOSTNAME}" == "localhost" ]] && die "Your machine must NOT be named localhost"
|
||||
|
||||
if ! has userpriv ${FEATURES} ; then
|
||||
die "Testing with FEATURES=-userpriv is no longer supported by upstream. Tests MUST be run as non-root."
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
|
||||
java-pkg-opt-2_pkg_setup
|
||||
}
|
||||
|
||||
src_unpack() {
|
||||
unpack ${A}
|
||||
|
||||
mv -f "${WORKDIR%/}/${PN%%-galera}-${PV}" "${S}" || die
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
eapply "${WORKDIR}"/mariadb-patches
|
||||
|
||||
eapply_user
|
||||
|
||||
_disable_plugin() {
|
||||
echo > "${S}/plugin/${1}/CMakeLists.txt" || die
|
||||
}
|
||||
_disable_engine() {
|
||||
echo > "${S}/storage/${1}/CMakeLists.txt" || die
|
||||
}
|
||||
|
||||
if use tcmalloc; then
|
||||
echo "TARGET_LINK_LIBRARIES(mysqld tcmalloc)" >> "${S%/}/sql/CMakeLists.txt" || die
|
||||
fi
|
||||
|
||||
# Don't build bundled xz-utils for tokudb
|
||||
echo > "${S}/storage/tokudb/PerconaFT/cmake_modules/TokuThirdParty.cmake" || die
|
||||
sed -i -e 's/ build_lzma//' -e 's/ build_snappy//' "${S}/storage/tokudb/PerconaFT/ft/CMakeLists.txt" || die
|
||||
sed -i -e 's/add_dependencies\(tokuportability_static_conv build_jemalloc\)//' "${S}/storage/tokudb/PerconaFT/portability/CMakeLists.txt" || die
|
||||
|
||||
# Fix -fno-common error
|
||||
sed -i -e '/^datasink_t datasink_buffer;$/d' extra/mariabackup/xbstream.c || die
|
||||
|
||||
local plugin
|
||||
local server_plugins=( handler_socket auth_socket feedback metadata_lock_info
|
||||
locale_info qc_info server_audit semisync sql_errlog )
|
||||
local test_plugins=( audit_null auth_examples daemon_example fulltext )
|
||||
if ! use server; then # These plugins are for the server
|
||||
for plugin in "${server_plugins[@]}" ; do
|
||||
_disable_plugin "${plugin}"
|
||||
done
|
||||
fi
|
||||
|
||||
if ! use test; then # These plugins are only used during testing
|
||||
for plugin in "${test_plugins[@]}" ; do
|
||||
_disable_plugin "${plugin}"
|
||||
done
|
||||
fi
|
||||
|
||||
# Collides with mariadb-connector-c bug 655980
|
||||
_disable_plugin auth_dialog
|
||||
|
||||
# Avoid useless library checks
|
||||
use mroonga || _disable_engine mroonga
|
||||
use oqgraph || _disable_engine oqgraph
|
||||
_disable_engine example
|
||||
|
||||
cmake_src_prepare
|
||||
java-pkg-opt-2_src_prepare
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
# bug 508724 mariadb cannot use ld.gold
|
||||
tc-ld-disable-gold
|
||||
# Bug #114895, bug #110149
|
||||
filter-flags "-O" "-O[01]"
|
||||
|
||||
append-cxxflags -felide-constructors
|
||||
|
||||
# bug #283926, with GCC4.4, this is required to get correct behavior.
|
||||
append-flags -fno-strict-aliasing
|
||||
|
||||
CMAKE_BUILD_TYPE="RelWithDebInfo"
|
||||
|
||||
# debug hack wrt #497532
|
||||
mycmakeargs=(
|
||||
-DCMAKE_C_FLAGS_RELWITHDEBINFO="$(usex debug '' '-DNDEBUG')"
|
||||
-DCMAKE_CXX_FLAGS_RELWITHDEBINFO="$(usex debug '' '-DNDEBUG')"
|
||||
-DDEFAULT_SYSCONFDIR="${EPREFIX}/etc/mysql"
|
||||
-DINSTALL_BINDIR=bin
|
||||
-DINSTALL_DOCDIR=share/doc/${PF}
|
||||
-DINSTALL_DOCREADMEDIR=share/doc/${PF}
|
||||
-DINSTALL_INCLUDEDIR=include/mysql
|
||||
-DINSTALL_INFODIR=share/info
|
||||
-DINSTALL_LIBDIR=$(get_libdir)
|
||||
-DINSTALL_MANDIR=share/man
|
||||
-DINSTALL_MYSQLSHAREDIR=share/mariadb
|
||||
-DINSTALL_MYSQLTESTDIR=$(usex test 'share/mariadb/mysql-test' '')
|
||||
-DINSTALL_PLUGINDIR=$(get_libdir)/mariadb/plugin
|
||||
-DINSTALL_SCRIPTDIR=share/mariadb/scripts
|
||||
-DINSTALL_MYSQLDATADIR="${EPREFIX}/var/lib/mysql"
|
||||
-DINSTALL_SBINDIR=sbin
|
||||
-DINSTALL_SUPPORTFILESDIR="${EPREFIX}/usr/share/mariadb"
|
||||
-DCOMPILATION_COMMENT="Gentoo Linux ${PF}"
|
||||
-DWITH_UNIT_TESTS=$(usex test ON OFF)
|
||||
-DWITH_ZLIB=system
|
||||
-DENABLED_LOCAL_INFILE=1
|
||||
-DMYSQL_UNIX_ADDR="${EPREFIX}/var/run/mysqld/mysqld.sock"
|
||||
-DINSTALL_UNIX_ADDRDIR="${EPREFIX}/var/run/mysqld/mysqld.sock"
|
||||
-DWITH_DEFAULT_COMPILER_OPTIONS=0
|
||||
-DWITH_DEFAULT_FEATURE_SET=0
|
||||
-DINSTALL_SYSTEMD_UNITDIR="$(systemd_get_systemunitdir)"
|
||||
# The build forces this to be defined when cross-compiling. We pass it
|
||||
# all the time for simplicity and to make sure it is actually correct.
|
||||
-DSTACK_DIRECTION=$(tc-stack-grows-down && echo -1 || echo 1)
|
||||
-DWITHOUT_CLIENTLIBS=YES
|
||||
-DWITH_READLINE=$(usex bindist 1 0)
|
||||
-DNOT_FOR_DISTRIBUTION=$(usex bindist 0 1)
|
||||
-DENABLE_DTRACE=$(usex systemtap)
|
||||
-DWITH_SSL=$(usex yassl bundled system)
|
||||
-DPLUGIN_CLIENT_ED25519=NO
|
||||
-DPLUGIN_AUTH_GSSAPI_CLIENT=NO
|
||||
)
|
||||
|
||||
if use server ; then
|
||||
|
||||
# Federated{,X} must be treated special otherwise they will not be built as plugins
|
||||
if ! use extraengine ; then
|
||||
mycmakeargs+=(
|
||||
-DPLUGIN_FEDERATED=NO
|
||||
-DPLUGIN_FEDERATEDX=NO )
|
||||
fi
|
||||
|
||||
mycmakeargs+=(
|
||||
-DWITH_JEMALLOC=$(usex jemalloc system)
|
||||
-DWITH_PCRE=system
|
||||
-DPLUGIN_OQGRAPH=$(usex oqgraph DYNAMIC NO)
|
||||
-DPLUGIN_SPHINX=$(usex sphinx YES NO)
|
||||
-DPLUGIN_TOKUDB=$(usex tokudb YES NO)
|
||||
-DPLUGIN_AUTH_PAM=$(usex pam YES NO)
|
||||
-DPLUGIN_CRACKLIB_PASSWORD_CHECK=$(usex cracklib YES NO)
|
||||
-DPLUGIN_CASSANDRA=NO
|
||||
-DPLUGIN_SEQUENCE=$(usex extraengine YES NO)
|
||||
-DPLUGIN_SPIDER=$(usex extraengine YES NO)
|
||||
-DPLUGIN_CONNECT=$(usex extraengine YES NO)
|
||||
-DCONNECT_WITH_MYSQL=1
|
||||
-DCONNECT_WITH_LIBXML2=$(usex xml)
|
||||
-DCONNECT_WITH_ODBC=$(usex odbc)
|
||||
-DCONNECT_WITH_JDBC=$(usex jdbc)
|
||||
# Build failure and autodep wrt bug 639144
|
||||
-DCONNECT_WITH_MONGO=OFF
|
||||
-DWITH_WSREP=$(usex galera)
|
||||
-DWITH_INNODB_LZ4=$(usex innodb-lz4 ON OFF)
|
||||
-DWITH_INNODB_LZO=$(usex innodb-lzo ON OFF)
|
||||
-DWITH_INNODB_SNAPPY=$(usex innodb-snappy ON OFF)
|
||||
-DPLUGIN_MROONGA=$(usex mroonga DYNAMIC NO)
|
||||
-DPLUGIN_AUTH_GSSAPI=$(usex kerberos DYNAMIC NO)
|
||||
-DPLUGIN_AUTH_GSSAPI_CLIENT=NO
|
||||
-DWITH_MARIABACKUP=$(usex backup ON OFF)
|
||||
-DWITH_LIBARCHIVE=$(usex backup ON OFF)
|
||||
-DWITH_SYSTEMD=$(usex systemd yes no)
|
||||
-DWITH_NUMA=$(usex numa ON OFF)
|
||||
-DINSTALL_SQLBENCHDIR=''
|
||||
)
|
||||
|
||||
if [[ ( -n ${MYSQL_DEFAULT_CHARSET} ) && ( -n ${MYSQL_DEFAULT_COLLATION} ) ]]; then
|
||||
ewarn "You are using a custom charset of ${MYSQL_DEFAULT_CHARSET}"
|
||||
ewarn "and a collation of ${MYSQL_DEFAULT_COLLATION}."
|
||||
ewarn "You MUST file bugs without these variables set."
|
||||
|
||||
mycmakeargs+=(
|
||||
-DDEFAULT_CHARSET=${MYSQL_DEFAULT_CHARSET}
|
||||
-DDEFAULT_COLLATION=${MYSQL_DEFAULT_COLLATION}
|
||||
)
|
||||
|
||||
elif ! use latin1 ; then
|
||||
mycmakeargs+=(
|
||||
-DDEFAULT_CHARSET=utf8
|
||||
-DDEFAULT_COLLATION=utf8_general_ci
|
||||
)
|
||||
else
|
||||
mycmakeargs+=(
|
||||
-DDEFAULT_CHARSET=latin1
|
||||
-DDEFAULT_COLLATION=latin1_swedish_ci
|
||||
)
|
||||
fi
|
||||
mycmakeargs+=(
|
||||
-DEXTRA_CHARSETS=all
|
||||
-DMYSQL_USER=mysql
|
||||
-DDISABLE_SHARED=$(usex static YES NO)
|
||||
-DWITH_DEBUG=$(usex debug)
|
||||
-DWITH_EMBEDDED_SERVER=OFF
|
||||
-DENABLED_PROFILING=$(usex profiling)
|
||||
)
|
||||
|
||||
if use static; then
|
||||
mycmakeargs+=( -DWITH_PIC=1 )
|
||||
fi
|
||||
|
||||
if use jemalloc || use tcmalloc ; then
|
||||
mycmakeargs+=( -DWITH_SAFEMALLOC=OFF )
|
||||
fi
|
||||
|
||||
# Storage engines
|
||||
mycmakeargs+=(
|
||||
-DWITH_ARCHIVE_STORAGE_ENGINE=1
|
||||
-DWITH_BLACKHOLE_STORAGE_ENGINE=1
|
||||
-DWITH_CSV_STORAGE_ENGINE=1
|
||||
-DWITH_HEAP_STORAGE_ENGINE=1
|
||||
-DWITH_INNOBASE_STORAGE_ENGINE=1
|
||||
-DWITH_MYISAMMRG_STORAGE_ENGINE=1
|
||||
-DWITH_MYISAM_STORAGE_ENGINE=1
|
||||
-DWITH_PARTITION_STORAGE_ENGINE=1
|
||||
)
|
||||
|
||||
else
|
||||
mycmakeargs+=(
|
||||
-DWITHOUT_SERVER=1
|
||||
-DWITH_EMBEDDED_SERVER=OFF
|
||||
-DEXTRA_CHARSETS=none
|
||||
-DINSTALL_SQLBENCHDIR=
|
||||
-DWITH_SYSTEMD=no
|
||||
)
|
||||
fi
|
||||
|
||||
cmake_src_configure
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
cmake_src_compile
|
||||
}
|
||||
|
||||
# Official test instructions:
|
||||
# USE='extraengine perl server' \
|
||||
# FEATURES='test userpriv' \
|
||||
# ebuild mariadb-X.X.XX.ebuild \
|
||||
# digest clean package
|
||||
src_test() {
|
||||
_disable_test() {
|
||||
local rawtestname bug reason
|
||||
rawtestname="${1}" ; shift
|
||||
bug="${1}" ; shift
|
||||
reason="${@}"
|
||||
ewarn "test '${rawtestname}' disabled: '${reason}' (BUG#${bug})"
|
||||
echo "${rawtestname} : BUG#${bug} ${reason}" >> "${T}/disabled.def"
|
||||
}
|
||||
|
||||
local TESTDIR="${BUILD_DIR}/mysql-test"
|
||||
local retstatus_unit
|
||||
local retstatus_tests
|
||||
|
||||
if ! use server ; then
|
||||
einfo "Skipping server tests due to minimal build."
|
||||
return 0
|
||||
fi
|
||||
|
||||
einfo ">>> Test phase [test]: ${CATEGORY}/${PF}"
|
||||
|
||||
# Run CTest (test-units)
|
||||
cmake_src_test
|
||||
retstatus_unit=$?
|
||||
|
||||
# Ensure that parallel runs don't die
|
||||
export MTR_BUILD_THREAD="$((${RANDOM} % 100))"
|
||||
|
||||
if [[ -z "${MTR_PARALLEL}" ]] ; then
|
||||
local -x MTR_PARALLEL=$(makeopts_jobs)
|
||||
|
||||
if [[ ${MTR_PARALLEL} -gt 4 ]] ; then
|
||||
# Running multiple tests in parallel usually require higher ulimit
|
||||
# and fs.aio-max-nr setting. In addition, tests like main.multi_update
|
||||
# are known to hit timeout when system is busy.
|
||||
# To avoid test failure we will limit MTR_PARALLEL to 4 instead of
|
||||
# using "auto".
|
||||
local info_msg="Parallel MySQL test suite jobs limited to 4 (MAKEOPTS=${MTR_PARALLEL})"
|
||||
info_msg+=" to avoid test failures. Set MTR_PARALLEL if you know what you are doing!"
|
||||
einfo "${info_msg}"
|
||||
unset info_msg
|
||||
MTR_PARALLEL=4
|
||||
fi
|
||||
else
|
||||
einfo "MTR_PARALLEL is set to '${MTR_PARALLEL}'"
|
||||
fi
|
||||
|
||||
# Try to increase file limits to increase test coverage
|
||||
if ! ulimit -n 16500 1>/dev/null 2>&1 ; then
|
||||
# Upper limit comes from parts.partition_* tests
|
||||
ewarn "For maximum test coverage please raise open file limit to 16500 (ulimit -n 16500) before calling the package manager."
|
||||
|
||||
if ! ulimit -n 4162 1>/dev/null 2>&1 ; then
|
||||
# Medium limit comes from '[Warning] Buffered warning: Could not increase number of max_open_files to more than 3000 (request: 4162)'
|
||||
ewarn "For medium test coverage please raise open file limit to 4162 (ulimit -n 4162) before calling the package manager."
|
||||
|
||||
if ! ulimit -n 3000 1>/dev/null 2>&1 ; then
|
||||
ewarn "For minimum test coverage please raise open file limit to 3000 (ulimit -n 3000) before calling the package manager."
|
||||
else
|
||||
einfo "Will run test suite with open file limit set to 3000 (minimum test coverage)."
|
||||
fi
|
||||
else
|
||||
einfo "Will run test suite with open file limit set to 4162 (medium test coverage)."
|
||||
fi
|
||||
else
|
||||
einfo "Will run test suite with open file limit set to 16500 (best test coverage)."
|
||||
fi
|
||||
|
||||
# create directories because mysqladmin might run out of order
|
||||
mkdir -p "${T}"/var-tests{,/log} || die
|
||||
|
||||
cp "${S}"/mysql-test/unstable-tests "${T}/disabled.def" || die
|
||||
|
||||
local -a disabled_tests
|
||||
disabled_tests+=( "compat/oracle.plugin;0;Needs example plugin which Gentoo disables" )
|
||||
disabled_tests+=( "main.explain_non_select;0;Sporadically failing test" )
|
||||
disabled_tests+=( "main.func_time;0;Dependent on time test was written" )
|
||||
disabled_tests+=( "main.grant;0;Sporadically failing test" )
|
||||
disabled_tests+=( "main.join_cache;0;Sporadically failing test" )
|
||||
disabled_tests+=( "main.plugin_auth;0;Needs client libraries built" )
|
||||
disabled_tests+=( "main.stat_tables;0;Sporadically failing test" )
|
||||
disabled_tests+=( "main.stat_tables_innodb;0;Sporadically failing test" )
|
||||
disabled_tests+=( "mariabackup.*;0;Broken test suite" )
|
||||
disabled_tests+=( "plugins.auth_ed25519;0;Needs client libraries built" )
|
||||
disabled_tests+=( "plugins.cracklib_password_check;0;False positive due to varying policies" )
|
||||
disabled_tests+=( "plugins.two_password_validations;0;False positive due to varying policies" )
|
||||
disabled_tests+=( "roles.acl_statistics;0;False positive due to a user count mismatch caused by previous test" )
|
||||
|
||||
if ! use latin1 ; then
|
||||
disabled_tests+=( "funcs_1.is_columns_mysql;0;Requires USE=latin1" )
|
||||
disabled_tests+=( "main.information_schema;0;Requires USE=latin1" )
|
||||
disabled_tests+=( "main.mysql;0;Requires USE=latin1" )
|
||||
disabled_tests+=( "main.system_mysql_db;0;Requires USE=latin1" )
|
||||
fi
|
||||
|
||||
if ! use profiling ; then
|
||||
disabled_tests+=( "sys_vars.sysvars_server_notembedded;0;Requires USE=profiling" )
|
||||
fi
|
||||
|
||||
local test_infos_str test_infos_arr
|
||||
for test_infos_str in "${disabled_tests[@]}" ; do
|
||||
IFS=';' read -r -a test_infos_arr <<< "${test_infos_str}"
|
||||
|
||||
if [[ ${#test_infos_arr[@]} != 3 ]] ; then
|
||||
die "Invalid test data set, not matching format: ${test_infos_str}"
|
||||
fi
|
||||
|
||||
_disable_test "${test_infos_arr[0]}" "${test_infos_arr[1]}" "${test_infos_arr[2]}"
|
||||
done
|
||||
unset test_infos_str test_infos_arr
|
||||
|
||||
# run mysql-test tests
|
||||
pushd "${TESTDIR}" &>/dev/null || die
|
||||
perl mysql-test-run.pl --force --vardir="${T}/var-tests" --reorder --skip-test=tokudb --skip-test-list="${T}/disabled.def"
|
||||
retstatus_tests=$?
|
||||
|
||||
popd &>/dev/null || die
|
||||
|
||||
# Cleanup is important for these testcases.
|
||||
pkill -9 -f "${S}/ndb" 2>/dev/null
|
||||
pkill -9 -f "${S}/sql" 2>/dev/null
|
||||
|
||||
local failures=""
|
||||
[[ $retstatus_unit -eq 0 ]] || failures="${failures} test-unit"
|
||||
[[ $retstatus_tests -eq 0 ]] || failures="${failures} tests"
|
||||
|
||||
[[ -z "$failures" ]] || die "Test failures: $failures"
|
||||
einfo "Tests successfully completed"
|
||||
}
|
||||
|
||||
src_install() {
|
||||
cmake_src_install
|
||||
|
||||
# Remove an unnecessary, private config header which will never match between ABIs and is not meant to be used
|
||||
if [[ -f "${ED}/usr/include/mysql/server/private/config.h" ]] ; then
|
||||
rm "${ED}/usr/include/mysql/server/private/config.h" || die
|
||||
fi
|
||||
|
||||
# Make sure the vars are correctly initialized
|
||||
mysql_init_vars
|
||||
|
||||
# Convenience links
|
||||
einfo "Making Convenience links for mysqlcheck multi-call binary"
|
||||
dosym "mysqlcheck" "/usr/bin/mysqlanalyze"
|
||||
dosym "mysqlcheck" "/usr/bin/mysqlrepair"
|
||||
dosym "mysqlcheck" "/usr/bin/mysqloptimize"
|
||||
|
||||
# INSTALL_LAYOUT=STANDALONE causes cmake to create a /usr/data dir
|
||||
if [[ -d "${ED}/usr/data" ]] ; then
|
||||
rm -Rf "${ED}/usr/data" || die
|
||||
fi
|
||||
|
||||
# Unless they explicitly specific USE=test, then do not install the
|
||||
# testsuite. It DOES have a use to be installed, esp. when you want to do a
|
||||
# validation of your database configuration after tuning it.
|
||||
if ! use test ; then
|
||||
rm -rf "${D}/${MY_SHAREDSTATEDIR}/mysql-test"
|
||||
fi
|
||||
|
||||
# Configuration stuff
|
||||
einfo "Building default configuration ..."
|
||||
insinto "${MY_SYSCONFDIR#${EPREFIX}}"
|
||||
[[ -f "${S}/scripts/mysqlaccess.conf" ]] && doins "${S}"/scripts/mysqlaccess.conf
|
||||
local mycnf_src="my.cnf-5.6-r1"
|
||||
sed -e "s!@DATADIR@!${MY_DATADIR}!g" \
|
||||
"${FILESDIR}/${mycnf_src}" \
|
||||
> "${TMPDIR}/my.cnf.ok" || die
|
||||
use prefix && sed -i -r -e '/^user[[:space:]]*=[[:space:]]*mysql$/d' "${TMPDIR}/my.cnf.ok"
|
||||
if use latin1 ; then
|
||||
sed -i \
|
||||
-e "/character-set/s|utf8|latin1|g" \
|
||||
"${TMPDIR}/my.cnf.ok" || die
|
||||
fi
|
||||
eprefixify "${TMPDIR}/my.cnf.ok"
|
||||
newins "${TMPDIR}/my.cnf.ok" my.cnf
|
||||
|
||||
if use server ; then
|
||||
einfo "Including support files and sample configurations"
|
||||
docinto "support-files"
|
||||
local script
|
||||
for script in \
|
||||
"${S}"/support-files/magic
|
||||
do
|
||||
[[ -f "$script" ]] && dodoc "${script}"
|
||||
done
|
||||
|
||||
docinto "scripts"
|
||||
for script in "${S}"/scripts/mysql* ; do
|
||||
[[ ( -f "$script" ) && ( "${script%.sh}" == "${script}" ) ]] && dodoc "${script}"
|
||||
done
|
||||
# Manually install supporting files that conflict with other packages
|
||||
# but are needed for galera and initial installation
|
||||
exeinto /usr/libexec/mariadb
|
||||
doexe "${BUILD_DIR}/extra/my_print_defaults" "${BUILD_DIR}/extra/perror"
|
||||
fi
|
||||
|
||||
# Remove mytop if perl is not selected
|
||||
if [[ -e "${ED}/usr/bin/mytop" ]] && ! use perl ; then
|
||||
rm -f "${ED}/usr/bin/mytop" || die
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_preinst() {
|
||||
java-pkg-opt-2_pkg_preinst
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
# Make sure the vars are correctly initialized
|
||||
mysql_init_vars
|
||||
|
||||
# Create log directory securely if it does not exist
|
||||
[[ -d "${ROOT}/${MY_LOGDIR}" ]] || install -d -m0750 -o mysql -g mysql "${ROOT}/${MY_LOGDIR}"
|
||||
|
||||
if use server ; then
|
||||
if use pam; then
|
||||
einfo
|
||||
elog "This install includes the PAM authentication plugin."
|
||||
elog "To activate and configure the PAM plugin, please read:"
|
||||
elog "https://mariadb.com/kb/en/mariadb/pam-authentication-plugin/"
|
||||
einfo
|
||||
fi
|
||||
|
||||
if [[ -z "${REPLACING_VERSIONS}" ]] ; then
|
||||
einfo
|
||||
elog "You might want to run:"
|
||||
elog "\"emerge --config =${CATEGORY}/${PF}\""
|
||||
elog "if this is a new install."
|
||||
elog
|
||||
elog "If you are switching server implentations, you should run the"
|
||||
elog "mysql_upgrade tool."
|
||||
einfo
|
||||
else
|
||||
einfo
|
||||
elog "If you are upgrading major versions, you should run the"
|
||||
elog "mysql_upgrade tool."
|
||||
einfo
|
||||
fi
|
||||
|
||||
einfo
|
||||
elog "Be sure to edit the my.cnf file to activate your cluster settings."
|
||||
elog "This should be done after running \"emerge --config =${CATEGORY}/${PF}\""
|
||||
elog "The first time the cluster is activated, you should add"
|
||||
elog "--wsrep-new-cluster to the options in /etc/conf.d/mysql for one node."
|
||||
elog "This option should then be removed for subsequent starts."
|
||||
einfo
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_config() {
|
||||
_getoptval() {
|
||||
local mypd="${EROOT}"/usr/libexec/mariadb/my_print_defaults
|
||||
local section="$1"
|
||||
local flag="--${2}="
|
||||
local extra_options="${3}"
|
||||
"${mypd}" $extra_options $section | sed -n "/^${flag}/s,${flag},,gp"
|
||||
}
|
||||
local old_MY_DATADIR="${MY_DATADIR}"
|
||||
local old_HOME="${HOME}"
|
||||
# my_print_defaults needs to read stuff in $HOME/.my.cnf
|
||||
export HOME=${EPREFIX}/root
|
||||
|
||||
# Make sure the vars are correctly initialized
|
||||
mysql_init_vars
|
||||
|
||||
[[ -z "${MY_DATADIR}" ]] && die "Sorry, unable to find MY_DATADIR"
|
||||
if [[ ! -x "${EROOT}/usr/sbin/mysqld" ]] ; then
|
||||
die "Minimal builds do NOT include the MySQL server"
|
||||
fi
|
||||
|
||||
if [[ ( -n "${MY_DATADIR}" ) && ( "${MY_DATADIR}" != "${old_MY_DATADIR}" ) ]]; then
|
||||
local MY_DATADIR_s="${ROOT}/${MY_DATADIR}"
|
||||
MY_DATADIR_s="${MY_DATADIR_s%%/}"
|
||||
local old_MY_DATADIR_s="${ROOT}/${old_MY_DATADIR}"
|
||||
old_MY_DATADIR_s="${old_MY_DATADIR_s%%/}"
|
||||
|
||||
if [[ ( -d "${old_MY_DATADIR_s}" ) && ( "${old_MY_DATADIR_s}" != / ) ]]; then
|
||||
if [[ -d "${MY_DATADIR_s}" ]]; then
|
||||
ewarn "Both ${old_MY_DATADIR_s} and ${MY_DATADIR_s} exist"
|
||||
ewarn "Attempting to use ${MY_DATADIR_s} and preserving ${old_MY_DATADIR_s}"
|
||||
else
|
||||
elog "Moving MY_DATADIR from ${old_MY_DATADIR_s} to ${MY_DATADIR_s}"
|
||||
mv --strip-trailing-slashes -T "${old_MY_DATADIR_s}" "${MY_DATADIR_s}" \
|
||||
|| die "Moving MY_DATADIR failed"
|
||||
fi
|
||||
else
|
||||
ewarn "Previous MY_DATADIR (${old_MY_DATADIR_s}) does not exist"
|
||||
if [[ -d "${MY_DATADIR_s}" ]]; then
|
||||
ewarn "Attempting to use ${MY_DATADIR_s}"
|
||||
else
|
||||
eerror "New MY_DATADIR (${MY_DATADIR_s}) does not exist"
|
||||
die "Configuration Failed! Please reinstall ${CATEGORY}/${PN}"
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
|
||||
local pwd1="a"
|
||||
local pwd2="b"
|
||||
local maxtry=15
|
||||
|
||||
if [ -z "${MYSQL_ROOT_PASSWORD}" ]; then
|
||||
local tmp_mysqld_password_source=
|
||||
|
||||
for tmp_mysqld_password_source in mysql client; do
|
||||
einfo "Trying to get password for mysql 'root' user from '${tmp_mysqld_password_source}' section ..."
|
||||
MYSQL_ROOT_PASSWORD="$(_getoptval "${tmp_mysqld_password_source}" password)"
|
||||
if [[ -n "${MYSQL_ROOT_PASSWORD}" ]]; then
|
||||
if [[ ${MYSQL_ROOT_PASSWORD} == *$'\n'* ]]; then
|
||||
ewarn "Ignoring password from '${tmp_mysqld_password_source}' section due to newline character (do you have multiple password options set?)!"
|
||||
MYSQL_ROOT_PASSWORD=
|
||||
continue
|
||||
fi
|
||||
|
||||
einfo "Found password in '${tmp_mysqld_password_source}' section!"
|
||||
break
|
||||
fi
|
||||
done
|
||||
|
||||
# Sometimes --show is required to display passwords in some implementations of my_print_defaults
|
||||
if [[ "${MYSQL_ROOT_PASSWORD}" == '*****' ]]; then
|
||||
MYSQL_ROOT_PASSWORD="$(_getoptval "${tmp_mysqld_password_source}" password --show)"
|
||||
fi
|
||||
|
||||
unset tmp_mysqld_password_source
|
||||
fi
|
||||
MYSQL_TMPDIR="$(_getoptval mysqld tmpdir | tail -n1)"
|
||||
# These are dir+prefix
|
||||
MYSQL_RELAY_LOG="$(_getoptval mysqld relay-log | tail -n1)"
|
||||
MYSQL_RELAY_LOG=${MYSQL_RELAY_LOG%/*}
|
||||
MYSQL_LOG_BIN="$(_getoptval mysqld log-bin | tail -n1)"
|
||||
MYSQL_LOG_BIN=${MYSQL_LOG_BIN%/*}
|
||||
|
||||
if [[ ! -d "${ROOT}/$MYSQL_TMPDIR" ]]; then
|
||||
einfo "Creating MySQL tmpdir $MYSQL_TMPDIR"
|
||||
install -d -m 770 -o mysql -g mysql "${EROOT}/$MYSQL_TMPDIR"
|
||||
fi
|
||||
if [[ ! -d "${ROOT}/$MYSQL_LOG_BIN" ]]; then
|
||||
einfo "Creating MySQL log-bin directory $MYSQL_LOG_BIN"
|
||||
install -d -m 770 -o mysql -g mysql "${EROOT}/$MYSQL_LOG_BIN"
|
||||
fi
|
||||
if [[ ! -d "${EROOT}/$MYSQL_RELAY_LOG" ]]; then
|
||||
einfo "Creating MySQL relay-log directory $MYSQL_RELAY_LOG"
|
||||
install -d -m 770 -o mysql -g mysql "${EROOT}/$MYSQL_RELAY_LOG"
|
||||
fi
|
||||
|
||||
if [[ -d "${ROOT}/${MY_DATADIR}/mysql" ]] ; then
|
||||
ewarn "You have already a MySQL database in place."
|
||||
ewarn "(${ROOT}/${MY_DATADIR}/*)"
|
||||
ewarn "Please rename or delete it if you wish to replace it."
|
||||
die "MySQL database already exists!"
|
||||
fi
|
||||
|
||||
# Bug #213475 - MySQL _will_ object strenously if your machine is named
|
||||
# localhost. Also causes weird failures.
|
||||
[[ "${HOSTNAME}" == "localhost" ]] && die "Your machine must NOT be named localhost"
|
||||
|
||||
if [[ -z "${MYSQL_ROOT_PASSWORD}" ]]; then
|
||||
|
||||
einfo "Please provide a password for the mysql 'root'@'localhost' user now"
|
||||
einfo "or through the ${HOME}/.my.cnf file."
|
||||
ewarn "Avoid [\"'\\_%] characters in the password"
|
||||
read -rsp " >" pwd1 ; echo
|
||||
|
||||
einfo "Retype the password"
|
||||
read -rsp " >" pwd2 ; echo
|
||||
|
||||
if [[ "x$pwd1" != "x$pwd2" ]] ; then
|
||||
die "Passwords are not the same"
|
||||
fi
|
||||
|
||||
MYSQL_ROOT_PASSWORD="${pwd1}"
|
||||
unset pwd1 pwd2
|
||||
fi
|
||||
|
||||
local options
|
||||
local sqltmp="$(emktemp)"
|
||||
|
||||
# Fix bug 446200. Don't reference host my.cnf, needs to come first,
|
||||
# see https://bugs.mysql.com/bug.php?id=31312
|
||||
use prefix && options="${options} '--defaults-file=${MY_SYSCONFDIR}/my.cnf'"
|
||||
|
||||
# Figure out which options we need to disable to do the setup
|
||||
local helpfile="${TMPDIR}/mysqld-help"
|
||||
"${EROOT}/usr/sbin/mysqld" --verbose --help >"${helpfile}" 2>/dev/null
|
||||
for opt in grant-tables host-cache name-resolve networking slave-start \
|
||||
federated ssl log-bin relay-log slow-query-log external-locking \
|
||||
log-slave-updates \
|
||||
; do
|
||||
optexp="--(skip-)?${opt}" optfull="--loose-skip-${opt}"
|
||||
egrep -sq -- "${optexp}" "${helpfile}" && options="${options} ${optfull}"
|
||||
done
|
||||
|
||||
einfo "Creating the mysql database and setting proper permissions on it ..."
|
||||
|
||||
# Now that /var/run is a tmpfs mount point, we need to ensure it exists before using it
|
||||
PID_DIR="${EROOT}/var/run/mysqld"
|
||||
if [[ ! -d "${PID_DIR}" ]]; then
|
||||
install -d -m 755 -o mysql -g mysql "${PID_DIR}" || die "Could not create pid directory"
|
||||
fi
|
||||
|
||||
if [[ ! -d "${MY_DATADIR}" ]]; then
|
||||
install -d -m 750 -o mysql -g mysql "${MY_DATADIR}" || die "Could not create data directory"
|
||||
fi
|
||||
|
||||
pushd "${TMPDIR}" &>/dev/null || die
|
||||
|
||||
# Filling timezones, see
|
||||
# https://dev.mysql.com/doc/mysql/en/time-zone-support.html
|
||||
"${EROOT}/usr/bin/mysql_tzinfo_to_sql" "${EROOT}/usr/share/zoneinfo" > "${sqltmp}" 2>/dev/null
|
||||
|
||||
local cmd=( "${EROOT}/usr/share/mariadb/scripts/mysql_install_db" )
|
||||
[[ -f "${cmd}" ]] || cmd=( "${EROOT}/usr/bin/mysql_install_db" )
|
||||
cmd+=( "--basedir=${EPREFIX}/usr" ${options} "--datadir=${ROOT}/${MY_DATADIR}" "--tmpdir=${ROOT}/${MYSQL_TMPDIR}" )
|
||||
einfo "Command: ${cmd[*]}"
|
||||
su -s /bin/sh -c "${cmd[*]}" mysql \
|
||||
>"${TMPDIR}"/mysql_install_db.log 2>&1
|
||||
if [[ $? -ne 0 ]]; then
|
||||
grep -B5 -A999 -i "ERROR" "${TMPDIR}"/mysql_install_db.log 1>&2
|
||||
die "Failed to initialize mysqld. Please review ${EPREFIX}/var/log/mysql/mysqld.err AND ${TMPDIR}/mysql_install_db.log"
|
||||
fi
|
||||
popd &>/dev/null || die
|
||||
[[ -f "${ROOT}/${MY_DATADIR}/mysql/user.frm" ]] \
|
||||
|| die "MySQL databases not installed"
|
||||
|
||||
use prefix || options="${options} --user=mysql"
|
||||
|
||||
local socket="${EROOT}/var/run/mysqld/mysqld${RANDOM}.sock"
|
||||
local pidfile="${EROOT}/var/run/mysqld/mysqld${RANDOM}.pid"
|
||||
local mysqld="${EROOT}/usr/sbin/mysqld \
|
||||
${options} \
|
||||
--log-warnings=0 \
|
||||
--basedir=${EROOT}/usr \
|
||||
--datadir=${ROOT}/${MY_DATADIR} \
|
||||
--max_allowed_packet=8M \
|
||||
--net_buffer_length=16K \
|
||||
--socket=${socket} \
|
||||
--pid-file=${pidfile} \
|
||||
--tmpdir=${ROOT}/${MYSQL_TMPDIR}"
|
||||
#einfo "About to start mysqld: ${mysqld}"
|
||||
ebegin "Starting mysqld"
|
||||
einfo "Command ${mysqld}"
|
||||
${mysqld} &
|
||||
rc=$?
|
||||
while ! [[ -S "${socket}" || "${maxtry}" -lt 1 ]] ; do
|
||||
maxtry=$((${maxtry}-1))
|
||||
echo -n "."
|
||||
sleep 1
|
||||
done
|
||||
eend $rc
|
||||
|
||||
if ! [[ -S "${socket}" ]]; then
|
||||
die "Completely failed to start up mysqld with: ${mysqld}"
|
||||
fi
|
||||
|
||||
ebegin "Setting root password"
|
||||
# Do this from memory, as we don't want clear text passwords in temp files
|
||||
local sql="UPDATE mysql.user SET Password = PASSWORD('${MYSQL_ROOT_PASSWORD}') WHERE USER='root'; FLUSH PRIVILEGES"
|
||||
"${EROOT}/usr/bin/mysql" \
|
||||
"--socket=${socket}" \
|
||||
-hlocalhost \
|
||||
-e "${sql}"
|
||||
eend $?
|
||||
|
||||
if [[ -n "${sqltmp}" ]] ; then
|
||||
ebegin "Loading \"zoneinfo\", this step may require a few seconds"
|
||||
"${EROOT}/usr/bin/mysql" \
|
||||
"--socket=${socket}" \
|
||||
-hlocalhost \
|
||||
-uroot \
|
||||
--password="${MYSQL_ROOT_PASSWORD}" \
|
||||
mysql < "${sqltmp}"
|
||||
rc=$?
|
||||
eend $?
|
||||
[[ $rc -ne 0 ]] && ewarn "Failed to load zoneinfo!"
|
||||
fi
|
||||
|
||||
# Stop the server and cleanup
|
||||
einfo "Stopping the server ..."
|
||||
kill $(< "${pidfile}" )
|
||||
rm -f "${sqltmp}"
|
||||
wait %1
|
||||
einfo "Done"
|
||||
}
|
@ -1,841 +0,0 @@
|
||||
# Copyright 1999-2020 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI="6"
|
||||
MY_EXTRAS_VER="20200523-1221Z"
|
||||
SUBSLOT="18"
|
||||
|
||||
# Keeping eutils in EAPI=6 for emktemp in pkg_config
|
||||
|
||||
inherit eutils flag-o-matic prefix toolchain-funcs user cmake-utils multilib-build
|
||||
|
||||
SRC_URI="https://downloads.mariadb.org/interstitial/${P}/source/${P}.tar.gz "
|
||||
|
||||
# Gentoo patches to MySQL
|
||||
if [[ "${MY_EXTRAS_VER}" != "live" && "${MY_EXTRAS_VER}" != "none" ]]; then
|
||||
SRC_URI="${SRC_URI}
|
||||
mirror://gentoo/mysql-extras-${MY_EXTRAS_VER}.tar.bz2
|
||||
https://gitweb.gentoo.org/proj/mysql-extras.git/snapshot/mysql-extras-${MY_EXTRAS_VER}.tar.bz2
|
||||
https://dev.gentoo.org/~grknight/distfiles/mysql-extras-${MY_EXTRAS_VER}.tar.bz2
|
||||
https://dev.gentoo.org/~robbat2/distfiles/mysql-extras-${MY_EXTRAS_VER}.tar.bz2
|
||||
https://dev.gentoo.org/~jmbsvicetto/distfiles/mysql-extras-${MY_EXTRAS_VER}.tar.bz2"
|
||||
fi
|
||||
|
||||
HOMEPAGE="https://mariadb.org/"
|
||||
DESCRIPTION="An enhanced, drop-in replacement for MySQL"
|
||||
LICENSE="GPL-2"
|
||||
SLOT="5.5/${SUBSLOT:-0}"
|
||||
IUSE="bindist client-libs debug extraengine jemalloc latin1 libressl
|
||||
oqgraph pam +perl profiling selinux +server sphinx
|
||||
static static-libs systemtap tcmalloc
|
||||
test tokudb yassl"
|
||||
|
||||
# Tests always fail when libressl is enabled due to hard-coded ciphers in the tests
|
||||
RESTRICT="!bindist? ( bindist ) libressl? ( test ) !test? ( test )"
|
||||
|
||||
REQUIRED_USE="server? ( tokudb? ( jemalloc !tcmalloc ) )
|
||||
?? ( tcmalloc jemalloc )
|
||||
static? ( yassl !pam )"
|
||||
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~x64-solaris ~x86-solaris"
|
||||
|
||||
# Shorten the path because the socket path length must be shorter than 107 chars
|
||||
# and we will run a mysql server during test phase
|
||||
S="${WORKDIR}/mysql"
|
||||
|
||||
if [[ "${MY_EXTRAS_VER}" == "live" ]] ; then
|
||||
MY_PATCH_DIR="${WORKDIR%/}/mysql-extras"
|
||||
inherit git-r3
|
||||
EGIT_REPO_URI="git://anongit.gentoo.org/proj/mysql-extras.git"
|
||||
EGIT_CHECKOUT_DIR="${WORKDIR%/}/mysql-extras"
|
||||
EGIT_CLONE_TYPE=shallow
|
||||
else
|
||||
MY_PATCH_DIR="${WORKDIR%/}/mysql-extras-${MY_EXTRAS_VER}"
|
||||
fi
|
||||
|
||||
PATCHES=(
|
||||
"${MY_PATCH_DIR}/01050_all_mariadb_mysql_config_cleanup-5.5.41.patch"
|
||||
"${MY_PATCH_DIR}/20004_all_mariadb-filter-tokudb-flags-5.5.68.patch"
|
||||
"${MY_PATCH_DIR}/20006_all_cmake_elib-mariadb-5.5.50.patch"
|
||||
"${MY_PATCH_DIR}/20009_all_mariadb_myodbc_symbol_fix-5.5.38.patch"
|
||||
"${MY_PATCH_DIR}/20018_all_mariadb-5.5.60-without-clientlibs-tools.patch"
|
||||
)
|
||||
|
||||
# Be warned, *DEPEND are version-dependant
|
||||
# These are used for both runtime and compiletime
|
||||
COMMON_DEPEND="
|
||||
kernel_linux? (
|
||||
sys-process/procps:0=
|
||||
dev-libs/libaio:0=
|
||||
)
|
||||
>=sys-apps/sed-4
|
||||
>=sys-apps/texinfo-4.7-r1
|
||||
jemalloc? ( dev-libs/jemalloc:0= )
|
||||
tcmalloc? ( dev-util/google-perftools:0= )
|
||||
systemtap? ( >=dev-util/systemtap-1.3:0= )
|
||||
!yassl? (
|
||||
!libressl? ( <dev-libs/openssl-1.1.0:0= )
|
||||
libressl? ( dev-libs/libressl:0= )
|
||||
)
|
||||
>=sys-libs/zlib-1.2.3:0=
|
||||
sys-libs/ncurses:0=
|
||||
!bindist? (
|
||||
>=sys-libs/readline-4.1:0=
|
||||
)
|
||||
server? (
|
||||
oqgraph? ( >=dev-libs/boost-1.40.0:0= dev-libs/judy:0= )
|
||||
pam? ( sys-libs/pam:0= )
|
||||
)
|
||||
!client-libs? ( dev-db/mysql-connector-c[${MULTILIB_USEDEP},static-libs?] )
|
||||
"
|
||||
DEPEND="virtual/yacc
|
||||
static? ( sys-libs/ncurses[static-libs] )
|
||||
|| ( >=sys-devel/gcc-3.4.6 >=sys-devel/gcc-apple-4.0 )
|
||||
${COMMON_DEPEND}"
|
||||
RDEPEND="selinux? ( sec-policy/selinux-mysql )
|
||||
client-libs? ( !dev-db/mariadb-connector-c[mysqlcompat] !dev-db/mysql-connector-c )
|
||||
!dev-db/mysql !dev-db/mariadb-galera !dev-db/percona-server !dev-db/mysql-cluster
|
||||
!dev-db/mariadb:0
|
||||
!dev-db/mariadb:10.1
|
||||
!dev-db/mariadb:10.2
|
||||
!dev-db/mariadb:10.3
|
||||
!dev-db/mariadb:10.4
|
||||
!dev-db/mariadb:10.5
|
||||
server? ( !prefix? ( dev-db/mysql-init-scripts ) )
|
||||
${COMMON_DEPEND}
|
||||
perl? ( !dev-db/mytop
|
||||
virtual/perl-Getopt-Long
|
||||
dev-perl/TermReadKey
|
||||
virtual/perl-Term-ANSIColor
|
||||
virtual/perl-Time-HiRes )
|
||||
"
|
||||
# For other stuff to bring us in
|
||||
# dev-perl/DBD-mysql is needed by some scripts installed by MySQL
|
||||
PDEPEND="perl? ( >=dev-perl/DBD-mysql-2.9004 )"
|
||||
|
||||
pkg_setup() {
|
||||
if [[ ${MERGE_TYPE} != binary ]] ; then
|
||||
local GCC_MAJOR_SET=$(gcc-major-version)
|
||||
local GCC_MINOR_SET=$(gcc-minor-version)
|
||||
if use tokudb && [[ ${GCC_MAJOR_SET} -lt 4 || \
|
||||
${GCC_MAJOR_SET} -eq 4 && ${GCC_MINOR_SET} -lt 7 ]] ; then
|
||||
eerror "${PN} with tokudb needs to be built with gcc-4.7 or later."
|
||||
eerror "Please use gcc-config to switch to gcc-4.7 or later version."
|
||||
die
|
||||
fi
|
||||
# Bug 565584. InnoDB now requires atomic functions introduced with gcc-4.7 on
|
||||
# non x86{,_64} arches
|
||||
if ! use amd64 && ! use x86 && [[ ${GCC_MAJOR_SET} -lt 4 || \
|
||||
${GCC_MAJOR_SET} -eq 4 && ${GCC_MINOR_SET} -lt 7 ]] ; then
|
||||
eerror "${PN} needs to be built with gcc-4.7 or later."
|
||||
eerror "Please use gcc-config to switch to gcc-4.7 or later version."
|
||||
die
|
||||
fi
|
||||
fi
|
||||
if has test ${FEATURES} && \
|
||||
use server && ! has userpriv ${FEATURES} ; then
|
||||
eerror "Testing with FEATURES=-userpriv is no longer supported by upstream. Tests MUST be run as non-root."
|
||||
fi
|
||||
|
||||
# This should come after all of the die statements
|
||||
enewgroup mysql 60 || die "problem adding 'mysql' group"
|
||||
enewuser mysql 60 -1 /dev/null mysql || die "problem adding 'mysql' user"
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
# Make sure the vars are correctly initialized
|
||||
mysql_init_vars
|
||||
|
||||
# Create log directory securely if it does not exist
|
||||
[[ -d "${ROOT}${MY_LOGDIR}" ]] || install -d -m0750 -o mysql -g mysql "${ROOT}${MY_LOGDIR}"
|
||||
|
||||
if use server ; then
|
||||
if use pam; then
|
||||
einfo
|
||||
elog "This install includes the PAM authentication plugin."
|
||||
elog "To activate and configure the PAM plugin, please read:"
|
||||
elog "https://mariadb.com/kb/en/mariadb/pam-authentication-plugin/"
|
||||
einfo
|
||||
fi
|
||||
|
||||
if [[ -z "${REPLACING_VERSIONS}" ]] ; then
|
||||
einfo
|
||||
elog "You might want to run:"
|
||||
elog "\"emerge --config =${CATEGORY}/${PF}\""
|
||||
elog "if this is a new install."
|
||||
elog
|
||||
elog "If you are switching server implentations, you should run the"
|
||||
elog "mysql_upgrade tool."
|
||||
einfo
|
||||
else
|
||||
einfo
|
||||
elog "If you are upgrading major versions, you should run the"
|
||||
elog "mysql_upgrade tool."
|
||||
einfo
|
||||
fi
|
||||
|
||||
einfo
|
||||
elog "Be sure to edit the my.cnf file to activate your cluster settings."
|
||||
elog "This should be done after running \"emerge --config =${CATEGORY}/${PF}\""
|
||||
elog "The first time the cluster is activated, you should add"
|
||||
elog "--wsrep-new-cluster to the options in /etc/conf.d/mysql for one node."
|
||||
elog "This option should then be removed for subsequent starts."
|
||||
einfo
|
||||
fi
|
||||
}
|
||||
|
||||
src_unpack() {
|
||||
unpack ${A}
|
||||
# Grab the patches
|
||||
[[ "${MY_EXTRAS_VER}" == "live" ]] && S="${WORKDIR%/}/mysql-extras" git-r3_src_unpack
|
||||
|
||||
mv -f "${WORKDIR%/}/${P}" "${S}" || die
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
_disable_engine() {
|
||||
echo > "${S%/}/storage/${1}/CMakeLists.txt" || die
|
||||
}
|
||||
|
||||
_disable_plugin() {
|
||||
echo > "${S%/}/plugin/${1}/CMakeLists.txt" || die
|
||||
}
|
||||
|
||||
if use tcmalloc; then
|
||||
echo "TARGET_LINK_LIBRARIES(mysqld tcmalloc)" >> "${S%/}/sql/CMakeLists.txt" || die
|
||||
fi
|
||||
|
||||
# Don't build bundled xz-utils for tokudb
|
||||
echo > "${S%/}/storage/tokudb/ft-index/cmake_modules/TokuThirdParty.cmake" || die
|
||||
sed -i -e 's/ build_lzma//' "${S%/}/storage/tokudb/ft-index/ft/CMakeLists.txt" || die
|
||||
sed -i -e 's/add_dependencies\(tokuportability_static_conv build_jemalloc\)//' "${S%/}/storage/tokudb/ft-index/portability/CMakeLists.txt" || die
|
||||
|
||||
local plugin
|
||||
local server_plugins=( handler_socket auth_socket feedback qc_info server_audit semisync sql_errlog )
|
||||
local test_plugins=( audit_null auth_examples daemon_example fulltext )
|
||||
if ! use server; then # These plugins are for the server
|
||||
for plugin in "${server_plugins[@]}" ; do
|
||||
_disable_plugin "${plugin}"
|
||||
done
|
||||
fi
|
||||
|
||||
if ! use test; then # These plugins are only used during testing
|
||||
for plugin in "${test_plugins[@]}" ; do
|
||||
_disable_plugin "${plugin}"
|
||||
done
|
||||
fi
|
||||
|
||||
# Collides with mariadb-connector-c bug 655980
|
||||
_disable_plugin auth_dialog
|
||||
|
||||
# Don't build example
|
||||
_disable_engine example
|
||||
|
||||
if ! use oqgraph ; then # avoids extra library checks
|
||||
_disable_engine oqgraph
|
||||
fi
|
||||
|
||||
# Don't clash with dev-db/mysql-connector-c
|
||||
sed -i -e 's/ my_print_defaults.1//' \
|
||||
-e 's/ perror.1//' \
|
||||
"${S}"/man/CMakeLists.txt || die
|
||||
|
||||
cmake-utils_src_prepare
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
# bug 508724 mariadb cannot use ld.gold
|
||||
tc-ld-disable-gold
|
||||
# Bug #114895, bug #110149
|
||||
filter-flags "-O" "-O[01]"
|
||||
|
||||
append-cxxflags -felide-constructors
|
||||
|
||||
# bug #283926, with GCC4.4, this is required to get correct behavior.
|
||||
append-flags -fno-strict-aliasing
|
||||
|
||||
CMAKE_BUILD_TYPE="RelWithDebInfo"
|
||||
|
||||
# debug hack wrt #497532
|
||||
mycmakeargs=(
|
||||
-DCMAKE_C_FLAGS_RELWITHDEBINFO="$(usex debug '' '-DNDEBUG')"
|
||||
-DCMAKE_CXX_FLAGS_RELWITHDEBINFO="$(usex debug '' '-DNDEBUG')"
|
||||
-DDEFAULT_SYSCONFDIR="${EPREFIX}/etc/mysql"
|
||||
-DINSTALL_BINDIR=bin
|
||||
-DINSTALL_DOCDIR=share/doc/${PF}
|
||||
-DINSTALL_DOCREADMEDIR=share/doc/${PF}
|
||||
-DINSTALL_INCLUDEDIR=include/mysql
|
||||
-DINSTALL_INFODIR=share/info
|
||||
-DINSTALL_LIBDIR=$(get_libdir)
|
||||
-DINSTALL_MANDIR=share/man
|
||||
-DINSTALL_MYSQLSHAREDIR=share/mariadb
|
||||
-DINSTALL_PLUGINDIR=$(get_libdir)/mariadb/plugin
|
||||
-DINSTALL_SCRIPTDIR=share/mariadb/scripts
|
||||
-DINSTALL_MYSQLDATADIR="${EPREFIX}/var/lib/mysql"
|
||||
-DINSTALL_SBINDIR=sbin
|
||||
-DINSTALL_SUPPORTFILESDIR="${EPREFIX}/usr/share/mariadb"
|
||||
-DCOMPILATION_COMMENT="Gentoo Linux ${PF}"
|
||||
-DWITH_UNIT_TESTS=$(usex test ON OFF)
|
||||
-DWITH_ZLIB=system
|
||||
-DENABLED_LOCAL_INFILE=1
|
||||
-DMYSQL_UNIX_ADDR="${EPREFIX}/var/run/mysqld/mysqld.sock"
|
||||
-DINSTALL_UNIX_ADDRDIR="${EPREFIX}/var/run/mysqld/mysqld.sock"
|
||||
# The build forces this to be defined when cross-compiling. We pass it
|
||||
# all the time for simplicity and to make sure it is actually correct.
|
||||
-DSTACK_DIRECTION=$(tc-stack-grows-down && echo -1 || echo 1)
|
||||
-DWITHOUT_CLIENTLIBS=YES
|
||||
-DWITH_READLINE=$(usex bindist 1 0)
|
||||
-DNOT_FOR_DISTRIBUTION=$(usex bindist 0 1)
|
||||
-DENABLE_DTRACE=$(usex systemtap)
|
||||
)
|
||||
if use test ; then
|
||||
mycmakeargs+=( -DINSTALL_MYSQLTESTDIR=share/mariadb/mysql-test )
|
||||
else
|
||||
mycmakeargs+=( -DINSTALL_MYSQLTESTDIR='' )
|
||||
fi
|
||||
|
||||
if ! use yassl ; then
|
||||
mycmakeargs+=( -DWITH_SSL=system )
|
||||
else
|
||||
mycmakeargs+=( -DWITH_SSL=bundled )
|
||||
fi
|
||||
|
||||
if use server ; then
|
||||
|
||||
# Federated{,X} must be treated special otherwise they will not be built as plugins
|
||||
if ! use extraengine ; then
|
||||
mycmakeargs+=(
|
||||
-DWITHOUT_FEDERATED_STORAGE_ENGINE=1
|
||||
-DWITHOUT_FEDERATEDX_STORAGE_ENGINE=1 )
|
||||
fi
|
||||
|
||||
mycmakeargs+=(
|
||||
-DWITH_JEMALLOC=$(usex jemalloc system)
|
||||
-D$(usex sphinx WITH WITHOUT)_SPHINX_STORAGE_ENGINE=1
|
||||
-D$(usex tokudb WITH WITHOUT)_TOKUDB_STORAGE_ENGINE=1
|
||||
-D$(usex oqgraph WITH WITHOUT)_AUTH_PAM=1
|
||||
-DINSTALL_SQLBENCHDIR=share/mariadb
|
||||
)
|
||||
|
||||
if [[ ( -n ${MYSQL_DEFAULT_CHARSET} ) && ( -n ${MYSQL_DEFAULT_COLLATION} ) ]]; then
|
||||
ewarn "You are using a custom charset of ${MYSQL_DEFAULT_CHARSET}"
|
||||
ewarn "and a collation of ${MYSQL_DEFAULT_COLLATION}."
|
||||
ewarn "You MUST file bugs without these variables set."
|
||||
|
||||
mycmakeargs+=(
|
||||
-DDEFAULT_CHARSET=${MYSQL_DEFAULT_CHARSET}
|
||||
-DDEFAULT_COLLATION=${MYSQL_DEFAULT_COLLATION}
|
||||
)
|
||||
|
||||
elif ! use latin1 ; then
|
||||
mycmakeargs+=(
|
||||
-DDEFAULT_CHARSET=utf8
|
||||
-DDEFAULT_COLLATION=utf8_general_ci
|
||||
)
|
||||
else
|
||||
mycmakeargs+=(
|
||||
-DDEFAULT_CHARSET=latin1
|
||||
-DDEFAULT_COLLATION=latin1_swedish_ci
|
||||
)
|
||||
fi
|
||||
mycmakeargs+=(
|
||||
-DEXTRA_CHARSETS=all
|
||||
-DDISABLE_SHARED=$(usex static YES NO)
|
||||
-DWITH_EMBEDDED_SERVER=OFF
|
||||
-DENABLED_PROFILING=$(usex profiling)
|
||||
)
|
||||
|
||||
if use static; then
|
||||
mycmakeargs+=( -DWITH_PIC=1 )
|
||||
fi
|
||||
|
||||
if use jemalloc || use tcmalloc ; then
|
||||
mycmakeargs+=( -DWITH_SAFEMALLOC=OFF )
|
||||
fi
|
||||
|
||||
# Storage engines
|
||||
mycmakeargs+=(
|
||||
-DWITH_ARCHIVE_STORAGE_ENGINE=1
|
||||
-DWITH_BLACKHOLE_STORAGE_ENGINE=1
|
||||
-DWITH_CSV_STORAGE_ENGINE=1
|
||||
-DWITH_HEAP_STORAGE_ENGINE=1
|
||||
-DWITH_INNOBASE_STORAGE_ENGINE=1
|
||||
-DWITH_MYISAMMRG_STORAGE_ENGINE=1
|
||||
-DWITH_MYISAM_STORAGE_ENGINE=1
|
||||
-DWITH_PARTITION_STORAGE_ENGINE=1
|
||||
)
|
||||
|
||||
else
|
||||
mycmakeargs+=(
|
||||
-DWITHOUT_SERVER=1
|
||||
-DEXTRA_CHARSETS=none
|
||||
-DINSTALL_SQLBENCHDIR=
|
||||
)
|
||||
fi
|
||||
|
||||
cmake-utils_src_configure
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
cmake-utils_src_compile
|
||||
}
|
||||
|
||||
src_install() {
|
||||
cmake-utils_src_install
|
||||
|
||||
# Remove an unnecessary, private config header which will never match between ABIs and is not meant to be used
|
||||
if [[ -f "${ED%/}/usr/include/mysql/server/private/config.h" ]] ; then
|
||||
rm "${ED%/}/usr/include/mysql/server/private/config.h" || die
|
||||
fi
|
||||
|
||||
# Make sure the vars are correctly initialized
|
||||
mysql_init_vars
|
||||
|
||||
# Convenience links
|
||||
einfo "Making Convenience links for mysqlcheck multi-call binary"
|
||||
dosym "mysqlcheck" "/usr/bin/mysqlanalyze"
|
||||
dosym "mysqlcheck" "/usr/bin/mysqlrepair"
|
||||
dosym "mysqlcheck" "/usr/bin/mysqloptimize"
|
||||
|
||||
# INSTALL_LAYOUT=STANDALONE causes cmake to create a /usr/data dir
|
||||
if [[ -d "${ED%/}/usr/data" ]] ; then
|
||||
rm -Rf "${ED%/}/usr/data" || die
|
||||
fi
|
||||
|
||||
# Unless they explicitly specific USE=test, then do not install the
|
||||
# testsuite. It DOES have a use to be installed, esp. when you want to do a
|
||||
# validation of your database configuration after tuning it.
|
||||
if ! use test ; then
|
||||
rm -rf "${D%/}/${MY_SHAREDSTATEDIR}/mysql-test"
|
||||
fi
|
||||
|
||||
# Configuration stuff
|
||||
einfo "Building default configuration ..."
|
||||
insinto "${MY_SYSCONFDIR#${EPREFIX}}"
|
||||
[[ -f "${S%/}/scripts/mysqlaccess.conf" ]] && doins "${S%/}"/scripts/mysqlaccess.conf
|
||||
local mycnf_src="my.cnf-5.5"
|
||||
sed -e "s!@DATADIR@!${MY_DATADIR}!g" \
|
||||
"${FILESDIR%/}/${mycnf_src}" \
|
||||
> "${TMPDIR%/}/my.cnf.ok" || die
|
||||
use prefix && sed -i -r -e '/^user[[:space:]]*=[[:space:]]*mysql$/d' "${TMPDIR%/}/my.cnf.ok"
|
||||
if use latin1 ; then
|
||||
sed -i \
|
||||
-e "/character-set/s|utf8|latin1|g" \
|
||||
"${TMPDIR%/}/my.cnf.ok" || die
|
||||
fi
|
||||
eprefixify "${TMPDIR%/}/my.cnf.ok"
|
||||
newins "${TMPDIR}/my.cnf.ok" my.cnf
|
||||
|
||||
if use server ; then
|
||||
einfo "Including support files and sample configurations"
|
||||
docinto "support-files"
|
||||
local script
|
||||
for script in \
|
||||
"${S%/}"/support-files/magic
|
||||
do
|
||||
[[ -f "$script" ]] && dodoc "${script}"
|
||||
done
|
||||
|
||||
docinto "scripts"
|
||||
for script in "${S%/}"/scripts/mysql* ; do
|
||||
[[ ( -f "$script" ) && ( "${script%.sh}" == "${script}" ) ]] && dodoc "${script}"
|
||||
done
|
||||
# Manually install supporting files that conflict with other packages
|
||||
# but are needed for galera and initial installation
|
||||
exeinto /usr/libexec/mariadb
|
||||
doexe "${BUILD_DIR}/extra/my_print_defaults" "${BUILD_DIR}/extra/perror"
|
||||
fi
|
||||
|
||||
#Remove mytop if perl is not selected
|
||||
[[ -e "${ED%/}/usr/bin/mytop" ]] && ! use perl && rm -f "${ED%/}/usr/bin/mytop"
|
||||
}
|
||||
|
||||
# Official test instructions:
|
||||
# USE='extraengine perl server' \
|
||||
# FEATURES='test userpriv -usersandbox' \
|
||||
# ebuild mariadb-X.X.XX.ebuild \
|
||||
# digest clean package
|
||||
src_test() {
|
||||
|
||||
_disable_test() {
|
||||
local rawtestname reason
|
||||
rawtestname="${1}" ; shift
|
||||
reason="${@}"
|
||||
ewarn "test '${rawtestname}' disabled: '${reason}'"
|
||||
echo ${rawtestname} : ${reason} >> "${T}/disabled.def"
|
||||
}
|
||||
|
||||
local TESTDIR="${BUILD_DIR}/mysql-test"
|
||||
local retstatus_unit
|
||||
local retstatus_tests
|
||||
|
||||
if ! use server ; then
|
||||
einfo "Skipping server tests due to minimal build."
|
||||
return 0
|
||||
fi
|
||||
|
||||
# Bug #213475 - MySQL _will_ object strenously if your machine is named
|
||||
# localhost. Also causes weird failures.
|
||||
[[ "${HOSTNAME}" == "localhost" ]] && die "Your machine must NOT be named localhost"
|
||||
|
||||
if [[ $UID -eq 0 ]]; then
|
||||
die "Testing with FEATURES=-userpriv is no longer supported by upstream. Tests MUST be run as non-root."
|
||||
fi
|
||||
has usersandbox $FEATURES && ewarn "Some tests may fail with FEATURES=usersandbox"
|
||||
|
||||
einfo ">>> Test phase [test]: ${CATEGORY}/${PF}"
|
||||
|
||||
# Run CTest (test-units)
|
||||
cmake-utils_src_test
|
||||
retstatus_unit=$?
|
||||
|
||||
# Ensure that parallel runs don't die
|
||||
export MTR_BUILD_THREAD="$((${RANDOM} % 100))"
|
||||
# Enable parallel testing, auto will try to detect number of cores
|
||||
# You may set this by hand.
|
||||
# The default maximum is 8 unless MTR_MAX_PARALLEL is increased
|
||||
export MTR_PARALLEL="${MTR_PARALLEL:-auto}"
|
||||
|
||||
# create directories because mysqladmin might run out of order
|
||||
mkdir -p "${T}"/var-tests{,/log} || die
|
||||
|
||||
# Run mysql tests
|
||||
pushd "${TESTDIR}" > /dev/null || die
|
||||
|
||||
touch "${T}/disabled.def"
|
||||
# These are failing in MariaDB 5.5 for now and are believed to be
|
||||
# false positives:
|
||||
#
|
||||
# main.information_schema, binlog.binlog_statement_insert_delayed,
|
||||
# main.mysqld--help, funcs_1.is_triggers, funcs_1.is_tables_mysql,
|
||||
# funcs_1.is_columns_mysql
|
||||
# fails due to USE=-latin1 / utf8 default
|
||||
#
|
||||
# main.mysql_client_test, main.mysql_client_test_nonblock:
|
||||
# segfaults at random under Portage only, suspect resource limits.
|
||||
#
|
||||
# archive.mysqlhotcopy_archive main.mysqlhotcopy_myisam
|
||||
# fails due to bad cleanup of previous tests when run in parallel
|
||||
# The tool is deprecated anyway
|
||||
# Bug 532288
|
||||
|
||||
local t
|
||||
for t in main.mysql_client_test main.mysql_client_test_nonblock \
|
||||
binlog.binlog_statement_insert_delayed main.information_schema \
|
||||
main.mysqld--help \
|
||||
archive.mysqlhotcopy_archive main.mysqlhotcopy_myisam \
|
||||
funcs_1.is_triggers funcs_1.is_tables_mysql funcs_1.is_columns_mysql ; do
|
||||
_disable_test "$t" "False positives in Gentoo"
|
||||
done
|
||||
|
||||
if ! use client-libs ; then
|
||||
_disable_test main.plugin_auth "Needs client libraries built"
|
||||
fi
|
||||
|
||||
# run mysql-test tests
|
||||
perl mysql-test-run.pl --force --vardir="${T}/var-tests" --reorder --skip-test=tokudb --skip-test-list="${T}/disabled.def"
|
||||
retstatus_tests=$?
|
||||
|
||||
popd > /dev/null || die
|
||||
|
||||
# Cleanup is important for these testcases.
|
||||
pkill -9 -f "${S}/ndb" 2>/dev/null
|
||||
pkill -9 -f "${S}/sql" 2>/dev/null
|
||||
|
||||
local failures=""
|
||||
[[ $retstatus_unit -eq 0 ]] || failures="${failures} test-unit"
|
||||
[[ $retstatus_tests -eq 0 ]] || failures="${failures} tests"
|
||||
|
||||
[[ -z "$failures" ]] || die "Test failures: $failures"
|
||||
einfo "Tests successfully completed"
|
||||
}
|
||||
|
||||
mysql_init_vars() {
|
||||
MY_SHAREDSTATEDIR=${MY_SHAREDSTATEDIR="${EPREFIX}/usr/share/mariadb"}
|
||||
MY_SYSCONFDIR=${MY_SYSCONFDIR="${EPREFIX}/etc/mysql"}
|
||||
MY_LOCALSTATEDIR=${MY_LOCALSTATEDIR="${EPREFIX}/var/lib/mysql"}
|
||||
MY_LOGDIR=${MY_LOGDIR="${EPREFIX}/var/log/mysql"}
|
||||
|
||||
if [[ -z "${MY_DATADIR}" ]] ; then
|
||||
MY_DATADIR=""
|
||||
if [[ -f "${MY_SYSCONFDIR}/my.cnf" ]] ; then
|
||||
MY_DATADIR=`"my_print_defaults" mysqld 2>/dev/null \
|
||||
| sed -ne '/datadir/s|^--datadir=||p' \
|
||||
| tail -n1`
|
||||
if [[ -z "${MY_DATADIR}" ]] ; then
|
||||
MY_DATADIR=`grep ^datadir "${MY_SYSCONFDIR}/my.cnf" \
|
||||
| sed -e 's/.*=\s*//' \
|
||||
| tail -n1`
|
||||
fi
|
||||
fi
|
||||
if [[ -z "${MY_DATADIR}" ]] ; then
|
||||
MY_DATADIR="${MY_LOCALSTATEDIR}"
|
||||
einfo "Using default MY_DATADIR"
|
||||
fi
|
||||
elog "MySQL MY_DATADIR is ${MY_DATADIR}"
|
||||
|
||||
if [[ -z "${PREVIOUS_DATADIR}" ]] ; then
|
||||
if [[ -e "${MY_DATADIR}" ]] ; then
|
||||
# If you get this and you're wondering about it, see bug #207636
|
||||
elog "MySQL datadir found in ${MY_DATADIR}"
|
||||
elog "A new one will not be created."
|
||||
PREVIOUS_DATADIR="yes"
|
||||
else
|
||||
PREVIOUS_DATADIR="no"
|
||||
fi
|
||||
export PREVIOUS_DATADIR
|
||||
fi
|
||||
else
|
||||
if [[ ${EBUILD_PHASE} == "config" ]]; then
|
||||
local new_MY_DATADIR
|
||||
new_MY_DATADIR=`"my_print_defaults" mysqld 2>/dev/null \
|
||||
| sed -ne '/datadir/s|^--datadir=||p' \
|
||||
| tail -n1`
|
||||
|
||||
if [[ ( -n "${new_MY_DATADIR}" ) && ( "${new_MY_DATADIR}" != "${MY_DATADIR}" ) ]]; then
|
||||
ewarn "MySQL MY_DATADIR has changed"
|
||||
ewarn "from ${MY_DATADIR}"
|
||||
ewarn "to ${new_MY_DATADIR}"
|
||||
MY_DATADIR="${new_MY_DATADIR}"
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
|
||||
export MY_SHAREDSTATEDIR MY_SYSCONFDIR
|
||||
export MY_LOCALSTATEDIR MY_LOGDIR
|
||||
export MY_DATADIR
|
||||
}
|
||||
|
||||
pkg_config() {
|
||||
_getoptval() {
|
||||
local mypd="${EROOT}"usr/libexec/mariadb/my_print_defaults
|
||||
local section="$1"
|
||||
local flag="--${2}="
|
||||
local extra_options="${3}"
|
||||
"${mypd}" $extra_options $section | sed -n "/^${flag}/s,${flag},,gp"
|
||||
}
|
||||
local old_MY_DATADIR="${MY_DATADIR}"
|
||||
local old_HOME="${HOME}"
|
||||
# my_print_defaults needs to read stuff in $HOME/.my.cnf
|
||||
export HOME=${EPREFIX}/root
|
||||
|
||||
# Make sure the vars are correctly initialized
|
||||
mysql_init_vars
|
||||
|
||||
[[ -z "${MY_DATADIR}" ]] && die "Sorry, unable to find MY_DATADIR"
|
||||
if [[ ! -x "${EROOT}/usr/sbin/mysqld" ]] ; then
|
||||
die "Minimal builds do NOT include the MySQL server"
|
||||
fi
|
||||
|
||||
if [[ ( -n "${MY_DATADIR}" ) && ( "${MY_DATADIR}" != "${old_MY_DATADIR}" ) ]]; then
|
||||
local MY_DATADIR_s="${ROOT}/${MY_DATADIR}"
|
||||
MY_DATADIR_s="${MY_DATADIR_s%%/}"
|
||||
local old_MY_DATADIR_s="${ROOT}/${old_MY_DATADIR}"
|
||||
old_MY_DATADIR_s="${old_MY_DATADIR_s%%/}"
|
||||
|
||||
if [[ ( -d "${old_MY_DATADIR_s}" ) && ( "${old_MY_DATADIR_s}" != / ) ]]; then
|
||||
if [[ -d "${MY_DATADIR_s}" ]]; then
|
||||
ewarn "Both ${old_MY_DATADIR_s} and ${MY_DATADIR_s} exist"
|
||||
ewarn "Attempting to use ${MY_DATADIR_s} and preserving ${old_MY_DATADIR_s}"
|
||||
else
|
||||
elog "Moving MY_DATADIR from ${old_MY_DATADIR_s} to ${MY_DATADIR_s}"
|
||||
mv --strip-trailing-slashes -T "${old_MY_DATADIR_s}" "${MY_DATADIR_s}" \
|
||||
|| die "Moving MY_DATADIR failed"
|
||||
fi
|
||||
else
|
||||
ewarn "Previous MY_DATADIR (${old_MY_DATADIR_s}) does not exist"
|
||||
if [[ -d "${MY_DATADIR_s}" ]]; then
|
||||
ewarn "Attempting to use ${MY_DATADIR_s}"
|
||||
else
|
||||
eerror "New MY_DATADIR (${MY_DATADIR_s}) does not exist"
|
||||
die "Configuration Failed! Please reinstall ${CATEGORY}/${PN}"
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
|
||||
local pwd1="a"
|
||||
local pwd2="b"
|
||||
local maxtry=15
|
||||
|
||||
if [ -z "${MYSQL_ROOT_PASSWORD}" ]; then
|
||||
local tmp_mysqld_password_source=
|
||||
|
||||
for tmp_mysqld_password_source in mysql client; do
|
||||
einfo "Trying to get password for mysql 'root' user from '${tmp_mysqld_password_source}' section ..."
|
||||
MYSQL_ROOT_PASSWORD="$(_getoptval "${tmp_mysqld_password_source}" password)"
|
||||
if [[ -n "${MYSQL_ROOT_PASSWORD}" ]]; then
|
||||
if [[ ${MYSQL_ROOT_PASSWORD} == *$'\n'* ]]; then
|
||||
ewarn "Ignoring password from '${tmp_mysqld_password_source}' section due to newline character (do you have multiple password options set?)!"
|
||||
MYSQL_ROOT_PASSWORD=
|
||||
continue
|
||||
fi
|
||||
|
||||
einfo "Found password in '${tmp_mysqld_password_source}' section!"
|
||||
break
|
||||
fi
|
||||
done
|
||||
|
||||
# Sometimes --show is required to display passwords in some implementations of my_print_defaults
|
||||
if [[ "${MYSQL_ROOT_PASSWORD}" == '*****' ]]; then
|
||||
MYSQL_ROOT_PASSWORD="$(_getoptval "${tmp_mysqld_password_source}" password --show)"
|
||||
fi
|
||||
|
||||
unset tmp_mysqld_password_source
|
||||
fi
|
||||
MYSQL_TMPDIR="$(_getoptval mysqld tmpdir | tail -n 1)"
|
||||
# These are dir+prefix
|
||||
MYSQL_RELAY_LOG="$(_getoptval mysqld relay-log | tail -n 1)"
|
||||
MYSQL_RELAY_LOG=${MYSQL_RELAY_LOG%/*}
|
||||
MYSQL_LOG_BIN="$(_getoptval mysqld log-bin | tail -n 1)"
|
||||
MYSQL_LOG_BIN=${MYSQL_LOG_BIN%/*}
|
||||
|
||||
if [[ ! -d "${ROOT}/$MYSQL_TMPDIR" ]]; then
|
||||
einfo "Creating MySQL tmpdir $MYSQL_TMPDIR"
|
||||
install -d -m 770 -o mysql -g mysql "${EROOT}/$MYSQL_TMPDIR"
|
||||
fi
|
||||
if [[ ! -d "${ROOT}/$MYSQL_LOG_BIN" ]]; then
|
||||
einfo "Creating MySQL log-bin directory $MYSQL_LOG_BIN"
|
||||
install -d -m 770 -o mysql -g mysql "${EROOT}/$MYSQL_LOG_BIN"
|
||||
fi
|
||||
if [[ ! -d "${EROOT}/$MYSQL_RELAY_LOG" ]]; then
|
||||
einfo "Creating MySQL relay-log directory $MYSQL_RELAY_LOG"
|
||||
install -d -m 770 -o mysql -g mysql "${EROOT}/$MYSQL_RELAY_LOG"
|
||||
fi
|
||||
|
||||
if [[ -d "${ROOT}/${MY_DATADIR}/mysql" ]] ; then
|
||||
ewarn "You have already a MySQL database in place."
|
||||
ewarn "(${ROOT}/${MY_DATADIR}/*)"
|
||||
ewarn "Please rename or delete it if you wish to replace it."
|
||||
die "MySQL database already exists!"
|
||||
fi
|
||||
|
||||
# Bug #213475 - MySQL _will_ object strenously if your machine is named
|
||||
# localhost. Also causes weird failures.
|
||||
[[ "${HOSTNAME}" == "localhost" ]] && die "Your machine must NOT be named localhost"
|
||||
|
||||
if [ -z "${MYSQL_ROOT_PASSWORD}" ]; then
|
||||
|
||||
einfo "Please provide a password for the mysql 'root' user now"
|
||||
einfo "or through the ${HOME}/.my.cnf file."
|
||||
ewarn "Avoid [\"'\\_%] characters in the password"
|
||||
read -rsp " >" pwd1 ; echo
|
||||
|
||||
einfo "Retype the password"
|
||||
read -rsp " >" pwd2 ; echo
|
||||
|
||||
if [[ "x$pwd1" != "x$pwd2" ]] ; then
|
||||
die "Passwords are not the same"
|
||||
fi
|
||||
MYSQL_ROOT_PASSWORD="${pwd1}"
|
||||
unset pwd1 pwd2
|
||||
fi
|
||||
|
||||
local options
|
||||
local sqltmp="$(emktemp)"
|
||||
|
||||
# Fix bug 446200. Don't reference host my.cnf, needs to come first,
|
||||
# see https://bugs.mysql.com/bug.php?id=31312
|
||||
use prefix && options="${options} '--defaults-file=${MY_SYSCONFDIR}/my.cnf'"
|
||||
|
||||
# Figure out which options we need to disable to do the setup
|
||||
local helpfile="${TMPDIR}/mysqld-help"
|
||||
"${EROOT}/usr/sbin/mysqld" --verbose --help >"${helpfile}" 2>/dev/null
|
||||
for opt in grant-tables host-cache name-resolve networking slave-start \
|
||||
federated ssl log-bin relay-log slow-query-log external-locking \
|
||||
log-slave-updates \
|
||||
; do
|
||||
optexp="--(skip-)?${opt}" optfull="--loose-skip-${opt}"
|
||||
egrep -sq -- "${optexp}" "${helpfile}" && options="${options} ${optfull}"
|
||||
done
|
||||
|
||||
einfo "Creating the mysql database and setting proper permissions on it ..."
|
||||
|
||||
# Now that /var/run is a tmpfs mount point, we need to ensure it exists before using it
|
||||
PID_DIR="${EROOT}/var/run/mysqld"
|
||||
if [[ ! -d "${PID_DIR}" ]]; then
|
||||
install -d -m 755 -o mysql -g mysql "${PID_DIR}" || die "Could not create pid directory"
|
||||
fi
|
||||
|
||||
if [[ ! -d "${MY_DATADIR}" ]]; then
|
||||
install -d -m 750 -o mysql -g mysql "${MY_DATADIR}" || die "Could not create data directory"
|
||||
fi
|
||||
|
||||
pushd "${TMPDIR}" &>/dev/null || die
|
||||
|
||||
# Filling timezones, see
|
||||
# https://dev.mysql.com/doc/mysql/en/time-zone-support.html
|
||||
"${EROOT}/usr/bin/mysql_tzinfo_to_sql" "${EROOT}/usr/share/zoneinfo" > "${sqltmp}" 2>/dev/null
|
||||
|
||||
local cmd=( "${EROOT}usr/share/mariadb/scripts/mysql_install_db" )
|
||||
[[ -f "${cmd}" ]] || cmd=( "${EROOT}usr/bin/mysql_install_db" )
|
||||
cmd+=( "--basedir=${EPREFIX}/usr" ${options} "--datadir=${ROOT}/${MY_DATADIR}" "--tmpdir=${ROOT}/${MYSQL_TMPDIR}" )
|
||||
einfo "Command: ${cmd[*]}"
|
||||
su -s /bin/sh -c "${cmd[*]}" mysql \
|
||||
>"${TMPDIR}"/mysql_install_db.log 2>&1
|
||||
if [ $? -ne 0 ]; then
|
||||
grep -B5 -A999 -i "ERROR" "${TMPDIR}"/mysql_install_db.log 1>&2
|
||||
die "Failed to initialize mysqld. Please review ${EPREFIX}/var/log/mysql/mysqld.err AND ${TMPDIR}/mysql_install_db.log"
|
||||
fi
|
||||
popd &>/dev/null || die
|
||||
[[ -f "${ROOT}/${MY_DATADIR}/mysql/user.frm" ]] \
|
||||
|| die "MySQL databases not installed"
|
||||
|
||||
use prefix || options="${options} --user=mysql"
|
||||
|
||||
local socket="${EROOT}/var/run/mysqld/mysqld${RANDOM}.sock"
|
||||
local pidfile="${EROOT}/var/run/mysqld/mysqld${RANDOM}.pid"
|
||||
local mysqld="${EROOT}/usr/sbin/mysqld \
|
||||
${options} \
|
||||
--log-warnings=0 \
|
||||
--basedir=${EROOT}/usr \
|
||||
--datadir=${ROOT}/${MY_DATADIR} \
|
||||
--max_allowed_packet=8M \
|
||||
--net_buffer_length=16K \
|
||||
--socket=${socket} \
|
||||
--pid-file=${pidfile} \
|
||||
--tmpdir=${ROOT}/${MYSQL_TMPDIR}"
|
||||
#einfo "About to start mysqld: ${mysqld}"
|
||||
ebegin "Starting mysqld"
|
||||
einfo "Command ${mysqld}"
|
||||
${mysqld} &
|
||||
rc=$?
|
||||
while ! [[ -S "${socket}" || "${maxtry}" -lt 1 ]] ; do
|
||||
maxtry=$((${maxtry}-1))
|
||||
echo -n "."
|
||||
sleep 1
|
||||
done
|
||||
eend $rc
|
||||
|
||||
if ! [[ -S "${socket}" ]]; then
|
||||
die "Completely failed to start up mysqld with: ${mysqld}"
|
||||
fi
|
||||
|
||||
ebegin "Setting root password"
|
||||
# Do this from memory, as we don't want clear text passwords in temp files
|
||||
local sql="UPDATE mysql.user SET Password = PASSWORD('${MYSQL_ROOT_PASSWORD}') WHERE USER='root'; FLUSH PRIVILEGES"
|
||||
"${EROOT}/usr/bin/mysql" \
|
||||
"--socket=${socket}" \
|
||||
-hlocalhost \
|
||||
-e "${sql}"
|
||||
eend $?
|
||||
|
||||
if [[ -n "${sqltmp}" ]] ; then
|
||||
ebegin "Loading \"zoneinfo\", this step may require a few seconds"
|
||||
"${EROOT}/usr/bin/mysql" \
|
||||
"--socket=${socket}" \
|
||||
-hlocalhost \
|
||||
-uroot \
|
||||
--password="${MYSQL_ROOT_PASSWORD}" \
|
||||
mysql < "${sqltmp}"
|
||||
rc=$?
|
||||
eend $?
|
||||
[[ $rc -ne 0 ]] && ewarn "Failed to load zoneinfo!"
|
||||
fi
|
||||
|
||||
# Stop the server and cleanup
|
||||
einfo "Stopping the server ..."
|
||||
kill $(< "${pidfile}" )
|
||||
rm -f "${sqltmp}"
|
||||
wait %1
|
||||
einfo "Done"
|
||||
}
|
Binary file not shown.
@ -0,0 +1,12 @@
|
||||
diff -ruN simgear-2020.1.2/CMakeLists.txt simgear-my/CMakeLists.txt
|
||||
--- simgear-2020.1.2/CMakeLists.txt 2020-05-24 17:13:35.000000000 +0200
|
||||
+++ simgear-my/CMakeLists.txt 2020-10-17 15:48:58.375116913 +0200
|
||||
@@ -442,8 +442,6 @@
|
||||
set(WARNING_FLAGS_CXX "-Wall -fPIC -Wno-overloaded-virtual -Wno-redeclared-class-member")
|
||||
set(WARNING_FLAGS_C "-Wall -fPIC")
|
||||
set(CMAKE_XCODE_ATTRIBUTE_CLANG_CXX_LIBRARY "libc++")
|
||||
- # fix Boost compilation :(
|
||||
- set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -stdlib=libc++")
|
||||
|
||||
# override CMake default RelWithDebInfo flags.
|
||||
set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "-O3 -g -DNDEBUG")
|
Binary file not shown.
Binary file not shown.
@ -1 +1 @@
|
||||
DIST half-0.2.2.3.tar.gz 6050 BLAKE2B 79ff80c1935814e73384b18754b3f74341c59ef55fddc40f002e1ce1a0780f45cdcb9c50726461da105508176b591f75fda955edb86091d186947d6da187b5ef SHA512 1b341670d0aa8513bef63a9522884d7c4b71cf9af6420bc67f8aab34c906a96c0288d900106878f5de9902b259f35501d09ba0b9ad82e5a759405e615572d17e
|
||||
DIST half-0.3.tar.gz 7341 BLAKE2B d37dad7dbc36b894132b4fdd430280be5305acc2fb26b0a88c68e5ca9678f7608d2086154fb174bd453723a466c7b1e4bc2dd055d48aa28b1938d545218bd1df SHA512 576766a8d5ae767da3915541195b68ce9586ff7a4a83473364a9d73d44b147b8fec4ecc09dc071520dd422b092e6291348dd2af25454a779b9c62e02cef0964c
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in new issue