parent
7f1df97f6d
commit
86ae606e9d
@ -1,23 +1,23 @@
|
||||
-----BEGIN PGP SIGNED MESSAGE-----
|
||||
Hash: SHA512
|
||||
|
||||
MANIFEST Manifest.files.gz 28799 BLAKE2B dff048dc5d2480333aaa5ffde5eeba8bda7fae5c05dfac732ea7ca5668c42464f654d70a68729bb35e2ff494f3546c0be0f3e72427e041433878dd4d9a756833 SHA512 0239286774e9de3d25b9d1661941c41ce6cfd4e5eff817bb77371e03cdb94bb4ac04c47f39c8860545737c460ab516baad4cdbb0030d603409f65c99c0b42209
|
||||
TIMESTAMP 2018-10-02T06:38:36Z
|
||||
MANIFEST Manifest.files.gz 28836 BLAKE2B 11b40398a034ad90eb1f78e1b23aba5432c9efe3e9b2840982190e7a474b271775d876f63861c1d630cf6d47ccda7ef547d5cc3aa445e0cf5cc4989710eb06c1 SHA512 fbfb737d39900bcf9bd21d45be345428b6f53f84d5326d6c85c5b062f81c86bc6f5f791c8e3b98973216002f959c6b791fe15c7c32277a55fbb064f454779231
|
||||
TIMESTAMP 2018-10-03T08:08:37Z
|
||||
-----BEGIN PGP SIGNATURE-----
|
||||
|
||||
iQKTBAEBCgB9FiEE4dartjv8+0ugL98c7FkO6skYklAFAluzEmxfFIAAAAAALgAo
|
||||
iQKTBAEBCgB9FiEE4dartjv8+0ugL98c7FkO6skYklAFAlu0eQVfFIAAAAAALgAo
|
||||
aXNzdWVyLWZwckBub3RhdGlvbnMub3BlbnBncC5maWZ0aGhvcnNlbWFuLm5ldEUx
|
||||
RDZBQkI2M0JGQ0ZCNEJBMDJGREYxQ0VDNTkwRUVBQzkxODkyNTAACgkQ7FkO6skY
|
||||
klDftw//Z5MgOqjDjMn6OexcRRinm18AbJjCAgsiA7rx2X1LVdVT7/1kUDNVkZJc
|
||||
FRbJZWITVINptesRV2O/t/DCEQNW07ySQJj2GEsGmSP3NjF16blbGpHZVWgiMo7i
|
||||
+K1cIGkgNXtrxy97SJCM0VYyW3feX/Lmqo0aSVJ9cqSoCjfFiNoATfAWpj6AOVc8
|
||||
sWtqWIc1T22jpo2HFLyPBTpdzSA7+BCkkSXXAVka7SwAFhVCa3LOZHVV3H9kaYFq
|
||||
ns3fGIvVBYWNIFIsxushRnEnp1zIXEeSlTBLe3f5L42Yc6rFaP3qa1O6xBIecLgY
|
||||
QZ724BEDKflDc4xa9LbL164lGE0AMvSVKd3zPbGNKnxVNB0H/aqClHlJj3RTfyT+
|
||||
X+8SE4GmxlEJOrb9+w2UsG0kdbylH5VMETViNcdZsb7edE+jRZzTBDF5SXViCtKv
|
||||
7Fy/Urn3+QxzQCGayQS7v1IWLIWurO2mm+w6RIQrIryUVThsQp5L59cbOyxwX7eK
|
||||
Bd9QeNmlGRqwFQOk742PVE8U+r845JXUCF6LUWzbyPk8CV7KIdxvE3pPuk0m16Xk
|
||||
+7znq+Y9V1YRiPQRvGfrDuWxAucL8iPARprh/uHDEESY6CaoFpr0wlaKXMJ2GuBq
|
||||
VR64df+l3s8/a0mFjBCnjTUc7a8xJqqFhCtVaeZQC4y0JknhkWo=
|
||||
=z58A
|
||||
klDVYw/+O50JqSS3O4hP/AnC6TRZQCQNgYN2K3IJuT4A1KAXVf1CJqFJZK7eJl7e
|
||||
d+eLa0REjH3tBc97En0fKKhQ/Iobnuyum73YQ9HAavKqF41JKvM9QyZ6/tJkkiqO
|
||||
8Kohb2Rzl90Hr0LB/iK89CllF0B0Aiwwr1Pw5DJlTkVO3jVVJp30ZnWNgH3nF5iF
|
||||
eLBLuGq8vptjcjnl7RBg6QPUwwIEGrOZ/Pgk7Jj0GgggWhNAhPaLwfHoaJb77sco
|
||||
rqhJ2xUkk1qK6AJRskl6dfNLiBCVirPb0Ys13tnEMe3XEmFRKm4X8PdKh7fvkQwB
|
||||
l8CzrSoIdE7W/9VcmEsv5pDis17M9o9aaCXolzKvfwgFmLpHsD2nhMFY15jyfJdp
|
||||
3WqDXFW0RpNC6tN6/VQ6HA+scnb8qsEgtFZskRUDopViI8nMF9pViw1Z1gN0hzCX
|
||||
V6hB6WBgs0GvqhCkVCSJcosoLA9j7drg2GvpK1ja19C7+JzlgRirZAUGjExgy4Z7
|
||||
6nvIDWqWLFGCHdZhSbDLSi1dF2hsXuI7DM2bR+eIZhGuRtnkr34oUjm5j5aw/sXm
|
||||
9Y04uJg17cX5YqIrOxJi9f2wobHjnhBnwB1nSwWRU+KEUDlkPi0LphlWx4w0u7Yn
|
||||
v3kkjpP7Z4hjLhwrZE0PdPlHmYqPrHyGbKLWOHhLUAhXmDOaOSE=
|
||||
=DBB9
|
||||
-----END PGP SIGNATURE-----
|
||||
|
Binary file not shown.
Binary file not shown.
@ -1,4 +1,4 @@
|
||||
# Copyright 1999-2018 Gentoo Foundation
|
||||
# Copyright 1999-2018 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=6
|
@ -1,4 +1,4 @@
|
||||
# Copyright 1999-2018 Gentoo Foundation
|
||||
# Copyright 1999-2018 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=6
|
@ -1,4 +1,4 @@
|
||||
# Copyright 1999-2018 Gentoo Foundation
|
||||
# Copyright 1999-2018 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=6
|
@ -1,4 +1,4 @@
|
||||
# Copyright 1999-2018 Gentoo Foundation
|
||||
# Copyright 1999-2018 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI="6"
|
@ -1,8 +1,8 @@
|
||||
AUX puppetserver.init 2138 BLAKE2B 6c157cb6bbe9e085ae67920abadf99ff97798115f784a60e2be4fa565f5b897f60d8abea21af273b1951477a1662c778081ee9a31063780c179097e764b0845b SHA512 50e78feda08e06a16290f90b7d593653c7fe2e98efdfc8cc7cc4a85a5be528e8bc585b934330f3a87b6f038311942fd8bc6d73f0538069d7b132dd3a64e23f11
|
||||
DIST puppetserver-5.3.4.tar.gz 67238476 BLAKE2B a92bdf77ffefc7c65c5cfd39431aa6b485bd92c617c4e32a281bfa431fbb428209b8834ef464a521e00d07f3ce0a443fe8a187f3a235c3200531533a1efa242d SHA512 edfa121d64fdbca9a8eef201fe6744e2694141deb318bec64c942bb1ebe6ea61ba1aaa15aee4f4e59913f79247b1c833c6633d3ff121eee836a83ccbaaece900
|
||||
DIST puppetserver-5.3.5.tar.gz 67238513 BLAKE2B 075d6101a29b57a1693a76ba557e4cff3b5689a7bd38cc9f0f116962081ec71a29c31dbd22be9bad49897f94fe0f309d87780d2edcdd6c02e9f403e4b0a631c2 SHA512 4d7546ed845cfc9b37e2db094cb0a7340bb344dbbf52eba9cac7e54b277302449e2c9c464243c0804c8d14c00d146e74725e0e46bde0297104c394ae19f2095c
|
||||
DIST puppetserver-6.0.0.tar.gz 62345355 BLAKE2B 086337ef25b89699df07779676727a28f580f992b04ca8fb0d26c38121fef625798ebb064a8a19c87341fbf2c54362158b60b772b94ff6f2f77efe3acac266f9 SHA512 2ab477e381fcb853bb862065465a4a29388e94d01cda49d78d2149dd25636cf98b9f0501733028fe3c5e61c36fc8093bf0423e5df01401e1e8888c2c48f79a2d
|
||||
DIST puppetserver-6.0.1.tar.gz 62362369 BLAKE2B 895eefe1f1d508a9a791fc30937bb778fe6d032fc0143caeafa695e73ee139cded8c6c839b90b4f168a641ab7952f4ba10a805e0a85112ca522e78df06838062 SHA512 485b24dbe74fe40c23b98693d02096052af23344a4c8d9bb5d29876cb4224ded482c5b741be1f2b8ff94d7e48041206acd4c301e9c188b3406b04b229fd51094
|
||||
EBUILD puppetserver-5.3.4.ebuild 4888 BLAKE2B 24f004c85c5726d79a4d8ad3563b03560d59f4b36380d9ade3954860cc36eb2d3070d4a491d7f6a01e9a5c09ff4d77c5220117b8c9b5119192db3a657dabcdd7 SHA512 281a4673302b36b1073df542be68a8dccd6bf682a9cd68aecfe63d185d9c7eda17ec79d627fb1790ebf0d85a93d92132f6eb5a850aee28995ddaf7c851c81609
|
||||
EBUILD puppetserver-5.3.5-r1.ebuild 4894 BLAKE2B 23e8e5a9b5d544c5107e8c56b5fffe727a06883dfcd13cf55f519e70a77798424a217970c4c38c1c703466a2ac16fe0032b9ccb7e377db5c40bdebba238caa53 SHA512 f43549918d1bfe8a9ffd444bd9816e91cde25b4939432949f28e4be5bf7081175bf524cbb66e9c9aa177b9da1844cb58155b1340b301c282a721db036cb83443
|
||||
EBUILD puppetserver-6.0.0-r1.ebuild 5327 BLAKE2B 2675238bcba4867791082dce66f80ae30c03576ee1caf3b84914a3a8cd6e9c33ce40faeb660212f7528d77e4b0fdf189b65bf64f69e33b1f849d3fe1eac96de8 SHA512 b9256334671a0ac889406994a4f43cca4d2ba0539144869b90d140b412119ae61b3088b17994b4cc63b7e71d347e46105557241f7c24cdcd0461950eb0bfde8d
|
||||
EBUILD puppetserver-6.0.1.ebuild 5324 BLAKE2B 3f8b7d7c250a90cdfae36bb127641a81c20940dfc16a24662151dc53c18f5504e18224a3ef5352c824be1ea44d11fc6ea0378f4614a60aaf39be59227ae83885 SHA512 cb0f6432ae4addf53f932e79c5bd8e216255f2b46d3edb604f05db5706c77859f9cf41a4421a26963d8ce52183bb0d9ef11e6b04a84e59aa705e6260d283303f
|
||||
MISC metadata.xml 468 BLAKE2B eb3daaf61cea0ff7524b0034463c7bdbf2fa8c40277deb106f28fd8e1ab90964600e3922c10eb317ce826e2b9b7db5162ad1c2e6e76d4b0c01de486e6b5a89fe SHA512 0bf5e337ba3d5d3e4d84cc397ecf40d0c0ba298aa22c9d54a89381391a69a2374ce736443edacc67403490d2a4950a7c386fb4741b149d0eca700d115b0ac24c
|
||||
|
@ -1,4 +1,4 @@
|
||||
# Copyright 1999-2018 Gentoo Foundation
|
||||
# Copyright 1999-2018 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=6
|
Binary file not shown.
@ -1,7 +1,9 @@
|
||||
DIST yubikey-manager-qt-0.4.0.tar.gz 183566 BLAKE2B 2364d0d257ab5c05d0555aba4bb01ee1639a2c3a42b47173ae905945a6265b123985ad7d8fe50b0cfd38a1a0a588f3e1424aa46585ddbf50337ce2456899067e SHA512 12cef9636f06a92fdb3fce7cea5b97af3255b9cdd1b4feb4e184999eb77c17e465db927f56cd0e443a8ce8afc27b7e4be19ed07da7c41259f909ac4e98971de2
|
||||
DIST yubikey-manager-qt-0.5.1.tar 655360 BLAKE2B 6b109190750bd9675e32c836831a7e0ea286021303deffc64a351f2a127f5a5ee0190e3ca99abf0407bbb34a1a1c454f453fab464de2726f6cae539d5f865da1 SHA512 a8ceab5fd8d20eca2424d3f9a92ad12066e8fc26a7640df478965e5d9e2896fbc64885b26f599fcb2588f5b64d2f046af373f87e23ef266178ddf877e422ed36
|
||||
DIST yubikey-manager-qt-0.5.2.tar.gz 337194 BLAKE2B d6020116b9082671c039b521bbeebe7c1f0be022e233abbf8d6d788ea94e69e5f88aa3d6ec26a7b2edffa698327bb049e83ce54db2e0ba2ed1ad1dd536ab0961 SHA512 29265a10ae1dfe14dfdf4f1ba225516bf3bcbeb0115ca81696a4c5c506e957d6a99b0bb11a608e3175df99b8c04e8ae9250d5d42aab2b44b633d18fd2fc4c227
|
||||
DIST yubikey-manager-qt-1.0.0.tar.gz 8038084 BLAKE2B 9e1082be62dab2d43bfad3050dd38dbcd10e5b8761bf567ba4f3e1b4627a25709cfa29ac7a23560fff76e0a75b4668932a407268c8d90d791c381ad485fea029 SHA512 2cf5f70b2734a7c0346649f5419dbee39bef9bb80bb498631d4879abc48d422d70468713a48945e284f2bdef20f3bb570a0ac5a4daab6c1ff195d86e39168843
|
||||
EBUILD yubikey-manager-qt-0.4.0-r2.ebuild 1211 BLAKE2B 50e1f5f13343fd19b9b871f3c15a62bdbdeebddc9721d9aa7ac81de7c3312811d7cec0985e1063fdfa9d13b542cb03e0eace12c01d40c248df04c940fb2cb2d0 SHA512 d0511a033597c2e901736aa73b6b840fec03adabdda384a026ad4047be0d5ad0a3373ea2519b62e91efb0d864129d5d14a571a351ffc03477b899349985da64c
|
||||
EBUILD yubikey-manager-qt-0.5.1.ebuild 1445 BLAKE2B b11dd07d657c4e61f284d733ddcc71a3a2a0860a39b0a8d6ae9f3895cda38922dacb3816cd4464c91664f456e8edaf2b06175a07b1c8ad0d68cc2a616f00c881 SHA512 6beafa82aa84056534d0a99dac7438da46f7d9fd3328b220c39fed6da7da6c24239c8d2e68c48a994d6b691d4fc7ea832fae953243b6138df078ae16e0d226d2
|
||||
EBUILD yubikey-manager-qt-0.5.2.ebuild 1410 BLAKE2B 7da065e45b89bc70d7e3a577f9312bd6a955ad071fbc066c7401773fa9defe49aed871c3e4db7b6931309eff67a5a470014459a09c78568c159a582b9ae85d6c SHA512 d18d8da49e4080a2f84ac3ea1c800002d40eae7a584f35a430f3571a65b1e792b4e0f9275065dd392332d94998cd59c50183bf25bcfa310c3340adbb584c2376
|
||||
EBUILD yubikey-manager-qt-1.0.0.ebuild 1391 BLAKE2B 3df21aa74bea18bae177f2eb91fefe3bbf509698020167734de3406574d8c927f2997c75d70685cd3fd67f946284a10b06ff4d55042df6a69354fef00c070f22 SHA512 e67a0f971fa57843745d2c129566fd767e5bc6718d414040a3a460707053d5e638373dad884875d00ba70140020c7e1dfe5db3ee9abb551407a950b2814d920e
|
||||
MISC metadata.xml 257 BLAKE2B fd7fdb57fdce3a565a08cedc4d99216724e4013515d77ea89cb41a5c01e8f5479cab25fe53d44a705e3a71164cdc3c93e658e61deae654a13e5c2471dd83c57c SHA512 35e59430f93d3bb2e7e3042a2464b84f8e6cdf1e1624c1e7674bfc5147f9b9694da6b39ac081ed5fc22f1623aea889b743cfee11007911f3c8c17cf61443675b
|
||||
|
@ -0,0 +1,57 @@
|
||||
# Copyright 1999-2018 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=6
|
||||
|
||||
PYTHON_COMPAT=( python3_{4,5,6} )
|
||||
|
||||
inherit eutils qmake-utils python-single-r1
|
||||
|
||||
DESCRIPTION="Cross-platform application for configuring any YubiKey over all USB transports"
|
||||
HOMEPAGE="https://developers.yubico.com/yubikey-manager-qt https://github.com/Yubico/yubikey-manager-qt"
|
||||
SRC_URI="https://github.com/Yubico/${PN}/archive/${P}.tar.gz"
|
||||
|
||||
LICENSE="BSD-2"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64"
|
||||
|
||||
DEPEND="
|
||||
>=app-crypt/yubikey-manager-1.0.0[${PYTHON_USEDEP}]
|
||||
dev-python/cryptography[${PYTHON_USEDEP}]
|
||||
dev-python/pyotherside[${PYTHON_USEDEP}]
|
||||
dev-qt/qtsingleapplication[qt5(+),X]
|
||||
dev-qt/qtgui:5
|
||||
dev-qt/qtcore:5
|
||||
dev-qt/qtdeclarative:5
|
||||
dev-qt/qtsvg:5
|
||||
dev-qt/qtquickcontrols2:5[widgets]
|
||||
dev-qt/qtwidgets:5"
|
||||
RDEPEND="${DEPEND}"
|
||||
|
||||
S="${WORKDIR}/${PN}-${P}"
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
|
||||
sed -i -e "s/ykman-cli//" ${PN}.pro || die
|
||||
sed -e "/qtsingleapplication.pri/d" \
|
||||
-e "/CONFIG += c++11/a CONFIG += qtsingleapplication" \
|
||||
-i ykman-gui/ykman-gui.pro || die
|
||||
|
||||
# See: https://github.com/Yubico/yubikey-manager-qt/issues/54
|
||||
echo "${PV}" > "${S}"/VERSION || die
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
eqmake5
|
||||
}
|
||||
|
||||
src_install() {
|
||||
emake install INSTALL_ROOT="${D}"
|
||||
|
||||
domenu resources/ykman-gui.desktop
|
||||
doicon -s 128 resources/icons/ykman.png
|
||||
doicon -s scalable resources/icons/ykman.svg
|
||||
|
||||
einstalldocs
|
||||
}
|
@ -0,0 +1,60 @@
|
||||
# Copyright 1999-2018 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=6
|
||||
|
||||
PYTHON_COMPAT=( python{2_7,3_{4,5,6}} )
|
||||
inherit readme.gentoo-r1 distutils-r1
|
||||
|
||||
DESCRIPTION="Python library and command line tool for configuring a YubiKey"
|
||||
HOMEPAGE="https://developers.yubico.com/yubikey-manager/"
|
||||
SRC_URI="https://developers.yubico.com/${PN}/Releases/${P}.tar.gz
|
||||
test? ( https://dev.gentoo.org/~gokturk/distfiles/app-crypt/${PN}/${PN}-0.7.1-test-files.tar.xz )"
|
||||
|
||||
LICENSE="BSD-2"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64"
|
||||
IUSE="test"
|
||||
|
||||
RDEPEND="
|
||||
dev-python/fido2[${PYTHON_USEDEP}]
|
||||
dev-python/six[${PYTHON_USEDEP}]
|
||||
dev-python/pyscard[${PYTHON_USEDEP}]
|
||||
dev-python/pyusb[${PYTHON_USEDEP}]
|
||||
dev-python/click[${PYTHON_USEDEP}]
|
||||
dev-python/cryptography[${PYTHON_USEDEP}]
|
||||
dev-python/pyopenssl[${PYTHON_USEDEP}]
|
||||
$(python_gen_cond_dep 'dev-python/enum34[${PYTHON_USEDEP}]' python2_7)
|
||||
>=sys-auth/ykpers-1.19.0
|
||||
"
|
||||
DEPEND="
|
||||
test? (
|
||||
${RDEPEND}
|
||||
$(python_gen_cond_dep 'dev-python/mock[${PYTHON_USEDEP}]' 'python2_7')
|
||||
)
|
||||
"
|
||||
|
||||
python_test() {
|
||||
touch "${S}"/test/__init__.py || die
|
||||
cp -r "${WORKDIR}/files" "${S}"/test/ || die
|
||||
esetup.py test
|
||||
}
|
||||
|
||||
python_install_all() {
|
||||
local DOC_CONTENTS
|
||||
|
||||
distutils-r1_python_install_all
|
||||
|
||||
DOC_CONTENTS="
|
||||
The 'openpgp' command may require the package 'app-crypt/ccid'
|
||||
to be installed on the system. Furthermore, make sure that pcscd
|
||||
daemon is running and has correct access permissions to USB
|
||||
devices.
|
||||
"
|
||||
|
||||
readme.gentoo_create_doc
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
readme.gentoo_print_elog
|
||||
}
|
Binary file not shown.
@ -1,7 +1,9 @@
|
||||
DIST gnucash-docs-3.0.tar.gz 92420576 BLAKE2B 95d8c310b3616b44a814c7c5d6e8b1b586eef12831ea967818bef302e0dde3f0ab8e1b1d4fd0d504173625d87d54738a392ad3d53b8bfa079fd5ba87ac3a2d91 SHA512 908694725de6d9595cb73d4b334f157287a864ff7ba1057bdff7c0fb55660c5828a6b5c1e868eea7fbd0fca4b3b594fb3989092f270446dbd56c07479c6036cf
|
||||
DIST gnucash-docs-3.1.tar.gz 92421041 BLAKE2B b169d26cb9fb07a265fb5b8fc492fa8b0ed240be094278416d54542dd4ca074b3d4a182421b75d09c1f6c435891c5637aed646f0d11bdd57a9b71cbc999676dd SHA512 4af1f0b895cc928c109ae4f883efd1b483a5b318e02fcd6ca4ff7631ed4e13bc0f89f28b2f8ea895f9e37f596eb7b84e84732dfac6b2d4fe98b7405603149339
|
||||
DIST gnucash-docs-3.2.tar.gz 92387447 BLAKE2B dac502975f885b777c1e91a7ea574789947e1dddfd3239c05973ce57fec41a6d78e605ef37aaf721db4aa4d2bc8f2dda7ed76cc4dc97dd49e30618414e262f15 SHA512 a58a583a457377f529223ced083fb64460b3b0c75a423db08c7f9542711be98fd59bd776bf77309ff91d1c46f22a5ae882d8c0a8ec3fc834d7a8028a95028aad
|
||||
DIST gnucash-docs-3.3.tar.gz 92417386 BLAKE2B 200f9b8d3006589eac5f0d66300d658f69f5c55078371c5b416e34784835350de9bd40fc5d85e59116022874294f74e259a034d6ebcaf315b1ea9942b8350c7b SHA512 5887171cbe95f545eb6e647aee2d04a26ab9102643acd8d3e5754000613a7fb08e4470777f7dfbfd0d1ed7609de7a6241cd82f5c7d62f632b2e3751b005bc01e
|
||||
EBUILD gnucash-docs-3.0.ebuild 861 BLAKE2B 16e5e35a8c624de231dab411108eb463f1d151312c5e33eec0f4b78f3efaec73a505149373297ee0376ea6576e83982325254c19a3e808f733a70c748e4451ac SHA512 33c547e298a0f2d601977e59ad3a19af7036ec4af5aef73de8f0d5fde47e1c4a878b34abd56e6e9fcfa4cfea7ddd9c9c8324ad17b1145a29c80236d55e022497
|
||||
EBUILD gnucash-docs-3.1.ebuild 861 BLAKE2B 16e5e35a8c624de231dab411108eb463f1d151312c5e33eec0f4b78f3efaec73a505149373297ee0376ea6576e83982325254c19a3e808f733a70c748e4451ac SHA512 33c547e298a0f2d601977e59ad3a19af7036ec4af5aef73de8f0d5fde47e1c4a878b34abd56e6e9fcfa4cfea7ddd9c9c8324ad17b1145a29c80236d55e022497
|
||||
EBUILD gnucash-docs-3.2-r1.ebuild 1670 BLAKE2B f13f7fc2d51ee3c91c07d577c9245b8851ea3891ade3ee4e09756f793bf5babf469f1eb764c7cfa466790d894ce3b1add0ec93f184ccff9d6844380955ad38e9 SHA512 0fc4e16167f525c5aa1d9a6666cc23143b8068bd82c288e828c573554ec6a94d0fcaf41a6973d1eeecf31cbb51bc1041f57be456f04c55a21063711e2f1d59e7
|
||||
EBUILD gnucash-docs-3.3.ebuild 1670 BLAKE2B f13f7fc2d51ee3c91c07d577c9245b8851ea3891ade3ee4e09756f793bf5babf469f1eb764c7cfa466790d894ce3b1add0ec93f184ccff9d6844380955ad38e9 SHA512 0fc4e16167f525c5aa1d9a6666cc23143b8068bd82c288e828c573554ec6a94d0fcaf41a6973d1eeecf31cbb51bc1041f57be456f04c55a21063711e2f1d59e7
|
||||
MISC metadata.xml 496 BLAKE2B a668cda0f44d550b086c539edbd5eeb93092fee992621cbd655b5c30e3bfd658fcd0a65d4140f2f9ba4d368438c224bac887e86e6d36b730afd4a24c195fc448 SHA512 19e5631659fe0153e6f2de3bcc8dc5eb1615dc3e6a3493d71ea0d5e18df48fe64fef31819883add93cd1da425ebea0aa82f62b0052bdc328773b8a3c0bfca26a
|
||||
|
@ -0,0 +1,85 @@
|
||||
# Copyright 1999-2018 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=6
|
||||
|
||||
PLOCALES="C de it ja pt ru"
|
||||
PLOCALE_BACKUP="C"
|
||||
|
||||
inherit autotools gnome2 l10n
|
||||
|
||||
DESCRIPTION="Documentation package for GnuCash"
|
||||
HOMEPAGE="http://www.gnucash.org/"
|
||||
SRC_URI="https://github.com/Gnucash/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
|
||||
|
||||
SLOT="0"
|
||||
LICENSE="GPL-2 FDL-1.1"
|
||||
KEYWORDS="~amd64 ~ppc ~ppc64 ~x86"
|
||||
|
||||
for my_locale in ${PLOCALES}; do
|
||||
IUSE+=" l10n_${my_locale}"
|
||||
done
|
||||
|
||||
DEPEND="
|
||||
app-text/docbook-xml-dtd
|
||||
app-text/docbook-xsl-stylesheets
|
||||
app-text/rarian
|
||||
dev-libs/libxml2
|
||||
dev-libs/libxslt
|
||||
"
|
||||
|
||||
my_l10n_get_locales() {
|
||||
local l locales
|
||||
for l in ${PLOCALES[@]}; do
|
||||
use "l10n_${l}" && locales+=( $l )
|
||||
done
|
||||
if [[ ${#locales[@]} -gt 0 ]]; then
|
||||
echo ${locales[@]}
|
||||
else
|
||||
echo $PLOCALE_BACKUP
|
||||
fi
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
eautoreconf
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
:
|
||||
}
|
||||
|
||||
src_install() {
|
||||
local doc_type my_lang
|
||||
|
||||
for doc_type in help guide; do
|
||||
for my_lang in $(my_l10n_get_locales); do
|
||||
case $my_lang in
|
||||
# Both help and guides translated
|
||||
C|de|it|pt) ;;
|
||||
ru|ja) # Only guides translated
|
||||
if [[ ${doc_type} = "help" ]] ; then
|
||||
elog "Help documentation hasn't been translated for $my_lang"
|
||||
elog "Will do English instead."
|
||||
my_lang=C
|
||||
fi
|
||||
;;
|
||||
*)
|
||||
die "Invalid locale: $my_lang"
|
||||
;;
|
||||
esac
|
||||
|
||||
cd "${S}/${doc_type}/${my_lang}" || die
|
||||
emake DESTDIR="${D}" install
|
||||
done
|
||||
done
|
||||
|
||||
cd "${S}" || die
|
||||
einstalldocs
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
gnome2_pkg_postinst
|
||||
optfeature "You need dev-java/fop to generate pdf files." dev-java/fop
|
||||
optfeature "You need gnome-extra/yelp to view the docs." gnome-extra/yelp
|
||||
}
|
Binary file not shown.
@ -0,0 +1,69 @@
|
||||
# Copyright 1999-2018 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=6
|
||||
|
||||
inherit cmake-utils linux-info
|
||||
|
||||
DESCRIPTION="ncurses interface for QEMU"
|
||||
HOMEPAGE="https://lib.void.so/nemu"
|
||||
SRC_URI="http://lib.void.so/src/${P}.tar.gz"
|
||||
|
||||
LICENSE="BSD-2"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
IUSE="+vnc-client +ovf savevm debug"
|
||||
|
||||
RDEPEND="
|
||||
virtual/udev:=
|
||||
dev-db/sqlite:3=
|
||||
virtual/libusb:1
|
||||
app-emulation/qemu[vnc,virtfs]
|
||||
sys-libs/ncurses:0=[unicode]
|
||||
ovf? (
|
||||
dev-libs/libxml2
|
||||
app-arch/libarchive
|
||||
)
|
||||
vnc-client? ( net-misc/tigervnc )"
|
||||
|
||||
DEPEND="
|
||||
${RDEPEND}
|
||||
sys-devel/gettext"
|
||||
|
||||
src_configure() {
|
||||
local mycmakeargs=(
|
||||
-DNM_WITH_VNC_CLIENT=$(usex vnc-client)
|
||||
-DNM_DEBUG=$(usex debug)
|
||||
-DNM_SAVEVM_SNAPSHOTS=$(usex savevm)
|
||||
-DNM_WITH_OVF_SUPPORT=$(usex ovf)
|
||||
)
|
||||
cmake-utils_src_configure
|
||||
}
|
||||
|
||||
pkg_pretend() {
|
||||
if use kernel_linux; then
|
||||
if ! linux_config_exists; then
|
||||
eerror "Unable to check your kernel"
|
||||
else
|
||||
CONFIG_CHECK="~VETH ~MACVTAP"
|
||||
ERROR_VETH="You will need the Virtual ethernet pair device driver compiled"
|
||||
ERROR_VETH+=" into your kernel or loaded as a module to use the"
|
||||
ERROR_VETH+=" local network settings feature."
|
||||
ERROR_MACVTAP="You will also need support for MAC-VLAN based tap driver."
|
||||
|
||||
check_extra_config
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
elog "For non-root usage execute script:"
|
||||
elog "/usr/share/nemu/scripts/setup_nemu_nonroot.sh linux <username>"
|
||||
elog "and add udev rule:"
|
||||
elog "cp /usr/share/nemu/scripts/42-net-macvtap-perm.rules /lib/udev/rules.d"
|
||||
if use savevm; then
|
||||
elog ""
|
||||
elog "QEMU must be patched with qemu-qmp-savevm-VERSION.patch"
|
||||
elog "Get this patch from nEMU repository"
|
||||
fi
|
||||
}
|
@ -0,0 +1,74 @@
|
||||
--- a/stubdom/Makefile 2013-07-09 18:46:56.000000000 +0800
|
||||
+++ b/stubdom/Makefile 2013-07-21 16:07:08.094663570 +0800
|
||||
@@ -68,12 +68,12 @@
|
||||
##############
|
||||
|
||||
newlib-$(NEWLIB_VERSION).tar.gz:
|
||||
- $(FETCHER) $@ $(NEWLIB_URL)/$@
|
||||
|
||||
newlib-$(NEWLIB_VERSION): newlib-$(NEWLIB_VERSION).tar.gz
|
||||
tar xzf $<
|
||||
patch -d $@ -p0 < newlib.patch
|
||||
patch -d $@ -p0 < newlib-chk.patch
|
||||
+ patch -d $@ -p0 < newlib-implicits.patch
|
||||
patch -d $@ -p1 < newlib-stdint-size_max-fix-from-1.17.0.patch
|
||||
find $@ -type f | xargs perl -i.bak \
|
||||
-pe 's/\b_(tzname|daylight|timezone)\b/$$1/g'
|
||||
@@ -85,7 +85,7 @@
|
||||
$(NEWLIB_STAMPFILE): mk-headers-$(XEN_TARGET_ARCH) newlib-$(NEWLIB_VERSION)
|
||||
mkdir -p newlib-$(XEN_TARGET_ARCH)
|
||||
( cd newlib-$(XEN_TARGET_ARCH) && \
|
||||
- CC_FOR_TARGET="$(CC) $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(NEWLIB_CFLAGS)" AR_FOR_TARGET=$(AR) LD_FOR_TARGET=$(LD) RANLIB_FOR_TARGET=$(RANLIB) ../newlib-$(NEWLIB_VERSION)/configure --prefix=$(CROSS_PREFIX) --verbose --target=$(GNU_TARGET_ARCH)-xen-elf --enable-newlib-io-long-long --disable-multilib && \
|
||||
+ CC_FOR_TARGET="$(CC) $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(NEWLIB_CFLAGS)" AR_FOR_TARGET=$(AR) LD_FOR_TARGET=$(LD) LDFLAGS= RANLIB_FOR_TARGET=$(RANLIB) ../newlib-$(NEWLIB_VERSION)/configure --prefix=$(CROSS_PREFIX) --verbose --target=$(GNU_TARGET_ARCH)-xen-elf --enable-newlib-io-long-long --disable-multilib && \
|
||||
$(MAKE) DESTDIR= && \
|
||||
$(MAKE) DESTDIR= install )
|
||||
|
||||
@@ -94,7 +94,6 @@
|
||||
############
|
||||
|
||||
zlib-$(ZLIB_VERSION).tar.gz:
|
||||
- $(FETCHER) $@ $(ZLIB_URL)/$@
|
||||
|
||||
zlib-$(XEN_TARGET_ARCH): zlib-$(ZLIB_VERSION).tar.gz
|
||||
tar xzf $<
|
||||
@@ -105,7 +104,7 @@
|
||||
cross-zlib: $(ZLIB_STAMPFILE)
|
||||
$(ZLIB_STAMPFILE): zlib-$(XEN_TARGET_ARCH) $(NEWLIB_STAMPFILE)
|
||||
( cd $< && \
|
||||
- CFLAGS="$(TARGET_CPPFLAGS) $(TARGET_CFLAGS)" CC=$(CC) ./configure --prefix=$(CROSS_PREFIX)/$(GNU_TARGET_ARCH)-xen-elf && \
|
||||
+ CFLAGS="$(TARGET_CPPFLAGS) $(TARGET_CFLAGS)" CC="$(CC)" ./configure --prefix=$(CROSS_PREFIX)/$(GNU_TARGET_ARCH)-xen-elf && \
|
||||
$(MAKE) DESTDIR= libz.a && \
|
||||
$(MAKE) DESTDIR= install )
|
||||
|
||||
@@ -114,7 +113,6 @@
|
||||
##############
|
||||
|
||||
pciutils-$(LIBPCI_VERSION).tar.bz2:
|
||||
- $(FETCHER) $@ $(LIBPCI_URL)/$@
|
||||
|
||||
pciutils-$(XEN_TARGET_ARCH): pciutils-$(LIBPCI_VERSION).tar.bz2
|
||||
tar xjf $<
|
||||
@@ -142,7 +140,6 @@
|
||||
######
|
||||
|
||||
lwip-$(LWIP_VERSION).tar.gz:
|
||||
- $(FETCHER) $@ $(LWIP_URL)/$@
|
||||
|
||||
lwip-$(XEN_TARGET_ARCH): lwip-$(LWIP_VERSION).tar.gz
|
||||
tar xzf $<
|
||||
@@ -180,7 +177,6 @@
|
||||
# cross-polarssl
|
||||
#############
|
||||
polarssl-$(POLARSSL_VERSION)-gpl.tgz:
|
||||
- $(FETCHER) $@ $(POLARSSL_URL)/$@
|
||||
|
||||
polarssl-$(XEN_TARGET_ARCH): polarssl-$(POLARSSL_VERSION)-gpl.tgz
|
||||
tar xzf $<
|
||||
@@ -385,7 +382,6 @@
|
||||
######
|
||||
|
||||
grub-$(GRUB_VERSION).tar.gz:
|
||||
- $(FETCHER) $@ $(GRUB_URL)/$@
|
||||
|
||||
grub-upstream: grub-$(GRUB_VERSION).tar.gz
|
||||
tar xzf $<
|
@ -1,455 +0,0 @@
|
||||
# Copyright 1999-2018 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=6
|
||||
|
||||
PYTHON_COMPAT=( python2_7 )
|
||||
PYTHON_REQ_USE='ncurses,xml,threads'
|
||||
|
||||
inherit bash-completion-r1 eutils flag-o-matic multilib python-single-r1 toolchain-funcs versionator
|
||||
|
||||
MY_PV=${PV/_/-}
|
||||
MAJOR_V="$(get_version_component_range 1-2)"
|
||||
|
||||
if [[ $PV == *9999 ]]; then
|
||||
inherit git-r3
|
||||
REPO="xen.git"
|
||||
EGIT_REPO_URI="git://xenbits.xen.org/${REPO}"
|
||||
S="${WORKDIR}/${REPO}"
|
||||
else
|
||||
KEYWORDS="~amd64 ~arm ~arm64 ~x86"
|
||||
UPSTREAM_VER=0
|
||||
SECURITY_VER=
|
||||
# xen-tools's gentoo patches tarball
|
||||
GENTOO_VER=12
|
||||
# xen-tools's gentoo patches version which apply to this specific ebuild
|
||||
GENTOO_GPV=0
|
||||
# xen-tools ovmf's patches
|
||||
OVMF_VER=3
|
||||
|
||||
SEABIOS_VER=1.10.0
|
||||
# OVMF upstream 5920a9d16b1ab887c2858224316a98e961d71b05
|
||||
OVMF_PV=20170321
|
||||
|
||||
[[ -n ${UPSTREAM_VER} ]] && \
|
||||
UPSTREAM_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${P/-tools/}-upstream-patches-${UPSTREAM_VER}.tar.xz
|
||||
https://github.com/hydrapolic/gentoo-dist/raw/master/xen/${P/-tools/}-upstream-patches-${UPSTREAM_VER}.tar.xz"
|
||||
[[ -n ${SECURITY_VER} ]] && \
|
||||
SECURITY_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${PN/-tools}-security-patches-${SECURITY_VER}.tar.xz"
|
||||
[[ -n ${GENTOO_VER} ]] && \
|
||||
GENTOO_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${PN/-tools}-gentoo-patches-${GENTOO_VER}.tar.xz
|
||||
https://github.com/hydrapolic/gentoo-dist/raw/master/xen/${PN/-tools/}-gentoo-patches-${GENTOO_VER}.tar.xz"
|
||||
[[ -n ${OVMF_VER} ]] && \
|
||||
OVMF_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${PN/-tools}-ovmf-patches-${OVMF_VER}.tar.xz"
|
||||
|
||||
SRC_URI="https://downloads.xenproject.org/release/xen/${MY_PV}/xen-${MY_PV}.tar.gz
|
||||
http://code.coreboot.org/p/seabios/downloads/get/seabios-${SEABIOS_VER}.tar.gz
|
||||
https://dev.gentoo.org/~dlan/distfiles/seabios-${SEABIOS_VER}.tar.gz
|
||||
ovmf? ( https://dev.gentoo.org/~dlan/distfiles/ovmf-${OVMF_PV}.tar.xz
|
||||
${OVMF_PATCHSET_URI} )
|
||||
${UPSTREAM_PATCHSET_URI}
|
||||
${SECURITY_PATCHSET_URI}
|
||||
${GENTOO_PATCHSET_URI}"
|
||||
|
||||
S="${WORKDIR}/xen-${MY_PV}"
|
||||
fi
|
||||
|
||||
DESCRIPTION="Xen tools including QEMU and xl"
|
||||
HOMEPAGE="https://www.xenproject.org"
|
||||
DOCS=( README docs/README.xen-bugtool )
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0/${MAJOR_V}"
|
||||
# Inclusion of IUSE ocaml on stabalizing requires maintainer of ocaml to (get off his hands and) make
|
||||
# >=dev-lang/ocaml-4 stable
|
||||
# Masked in profiles/eapi-5-files instead
|
||||
IUSE="api custom-cflags debug doc flask hvm ocaml ovmf +pam pygrub python +qemu +qemu-traditional screen sdl static-libs system-qemu system-seabios"
|
||||
|
||||
REQUIRED_USE="
|
||||
${PYTHON_REQUIRED_USE}
|
||||
pygrub? ( python )
|
||||
ovmf? ( hvm )
|
||||
^^ ( qemu system-qemu )"
|
||||
|
||||
COMMON_DEPEND="
|
||||
sys-apps/pciutils
|
||||
dev-libs/lzo:2
|
||||
dev-libs/glib:2
|
||||
dev-libs/yajl
|
||||
dev-libs/libaio
|
||||
dev-libs/libgcrypt:0
|
||||
sys-libs/zlib
|
||||
${PYTHON_DEPS}
|
||||
"
|
||||
|
||||
DEPEND="${COMMON_DEPEND}
|
||||
>=sys-kernel/linux-headers-4.11
|
||||
dev-python/lxml[${PYTHON_USEDEP}]
|
||||
x86? ( sys-devel/dev86
|
||||
sys-power/iasl )
|
||||
pam? ( dev-python/pypam[${PYTHON_USEDEP}] )
|
||||
api? ( dev-libs/libxml2
|
||||
net-misc/curl )
|
||||
ovmf? (
|
||||
!arm? ( !arm64? ( dev-lang/nasm ) )
|
||||
$(python_gen_impl_dep sqlite)
|
||||
)
|
||||
!amd64? ( >=sys-apps/dtc-1.4.0 )
|
||||
amd64? ( sys-devel/bin86
|
||||
system-seabios? ( sys-firmware/seabios )
|
||||
sys-firmware/ipxe
|
||||
sys-devel/dev86
|
||||
sys-power/iasl )
|
||||
dev-lang/perl
|
||||
app-misc/pax-utils
|
||||
doc? (
|
||||
app-text/ghostscript-gpl
|
||||
app-text/pandoc
|
||||
dev-python/markdown[${PYTHON_USEDEP}]
|
||||
dev-texlive/texlive-latexextra
|
||||
media-gfx/transfig
|
||||
)
|
||||
hvm? ( x11-base/xorg-proto
|
||||
!net-libs/libiscsi )
|
||||
qemu? (
|
||||
app-arch/snappy:=
|
||||
x11-libs/pixman
|
||||
sdl? ( media-libs/libsdl[X] )
|
||||
)
|
||||
system-qemu? ( app-emulation/qemu[xen] )
|
||||
ocaml? ( dev-ml/findlib
|
||||
>=dev-lang/ocaml-4 )"
|
||||
|
||||
RDEPEND="${COMMON_DEPEND}
|
||||
sys-apps/iproute2[-minimal]
|
||||
net-misc/bridge-utils
|
||||
screen? (
|
||||
app-misc/screen
|
||||
app-admin/logrotate
|
||||
)"
|
||||
|
||||
# hvmloader is used to bootstrap a fully virtualized kernel
|
||||
# Approved by QA team in bug #144032
|
||||
QA_WX_LOAD="
|
||||
usr/libexec/xen/boot/hvmloader
|
||||
usr/share/qemu-xen/qemu/s390-ccw.img
|
||||
usr/share/qemu-xen/qemu/u-boot.e500
|
||||
"
|
||||
|
||||
QA_PREBUILT="
|
||||
usr/libexec/xen/bin/ivshmem-client
|
||||
usr/libexec/xen/bin/ivshmem-server
|
||||
usr/libexec/xen/bin/qemu-img
|
||||
usr/libexec/xen/bin/qemu-io
|
||||
usr/libexec/xen/bin/qemu-nbd
|
||||
usr/libexec/xen/bin/qemu-system-i386
|
||||
usr/libexec/xen/bin/virtfs-proxy-helper
|
||||
usr/libexec/xen/libexec/xen-bridge-helper
|
||||
usr/share/qemu-xen/qemu/s390-ccw.img
|
||||
usr/share/qemu-xen/qemu/u-boot.e500
|
||||
"
|
||||
|
||||
RESTRICT="test"
|
||||
|
||||
pkg_setup() {
|
||||
python_setup
|
||||
export "CONFIG_LOMOUNT=y"
|
||||
|
||||
#bug 522642, disable compile tools/tests
|
||||
export "CONFIG_TESTS=n"
|
||||
|
||||
if [[ -z ${XEN_TARGET_ARCH} ]] ; then
|
||||
if use x86 && use amd64; then
|
||||
die "Confusion! Both x86 and amd64 are set in your use flags!"
|
||||
elif use x86; then
|
||||
export XEN_TARGET_ARCH="x86_32"
|
||||
elif use amd64 ; then
|
||||
export XEN_TARGET_ARCH="x86_64"
|
||||
elif use arm; then
|
||||
export XEN_TARGET_ARCH="arm32"
|
||||
elif use arm64; then
|
||||
export XEN_TARGET_ARCH="arm64"
|
||||
else
|
||||
die "Unsupported architecture!"
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
local i
|
||||
|
||||
# Upstream's patchset
|
||||
if [[ -n ${UPSTREAM_VER} ]]; then
|
||||
einfo "Try to apply Xen Upstream patch set"
|
||||
eapply "${WORKDIR}"/patches-upstream
|
||||
fi
|
||||
|
||||
# Security patchset
|
||||
if [[ -n ${SECURITY_VER} ]]; then
|
||||
einfo "Try to apply Xen Security patch set"
|
||||
# apply main xen patches
|
||||
# Two parallel systems, both work side by side
|
||||
# Over time they may concdense into one. This will suffice for now
|
||||
EPATCH_SUFFIX="patch"
|
||||
EPATCH_FORCE="yes"
|
||||
|
||||
source "${WORKDIR}"/patches-security/${PV}.conf || die
|
||||
|
||||
for i in ${XEN_SECURITY_MAIN}; do
|
||||
eapply "${WORKDIR}"/patches-security/xen/$i
|
||||
done
|
||||
|
||||
# apply qemu-xen/upstream patches
|
||||
pushd "${S}"/tools/qemu-xen/ > /dev/null
|
||||
for i in ${XEN_SECURITY_QEMUU}; do
|
||||
eapply "${WORKDIR}"/patches-security/qemuu/$i
|
||||
done
|
||||
popd > /dev/null
|
||||
|
||||
# apply qemu-traditional patches
|
||||
pushd "${S}"/tools/qemu-xen-traditional/ > /dev/null
|
||||
for i in ${XEN_SECURITY_QEMUT}; do
|
||||
eapply "${WORKDIR}"/patches-security/qemut/$i
|
||||
done
|
||||
popd > /dev/null
|
||||
fi
|
||||
|
||||
# move before Gentoo patch, one patch should apply to seabios, to fix gcc-4.5.x build err
|
||||
mv ../seabios-${SEABIOS_VER} tools/firmware/seabios-dir-remote || die
|
||||
pushd tools/firmware/ > /dev/null
|
||||
ln -s seabios-dir-remote seabios-dir || die
|
||||
popd > /dev/null
|
||||
|
||||
# Gentoo's patchset
|
||||
if [[ -n ${GENTOO_VER} && -n ${GENTOO_GPV} ]]; then
|
||||
einfo "Try to apply Gentoo specific patch set"
|
||||
source "${FILESDIR}"/gentoo-patches.conf || die
|
||||
_gpv=_gpv_${PN/-/_}_${PV//./}_${GENTOO_GPV}
|
||||
for i in ${!_gpv}; do
|
||||
eapply "${WORKDIR}"/patches-gentoo/$i
|
||||
done
|
||||
fi
|
||||
|
||||
# Ovmf's patchset
|
||||
if use ovmf; then
|
||||
if [[ -n ${OVMF_VER} ]];then
|
||||
einfo "Try to apply Ovmf patch set"
|
||||
pushd "${WORKDIR}"/ovmf-*/ > /dev/null
|
||||
eapply "${WORKDIR}"/patches-ovmf
|
||||
popd > /dev/null
|
||||
fi
|
||||
mv ../ovmf-${OVMF_PV} tools/firmware/ovmf-dir-remote || die
|
||||
fi
|
||||
|
||||
mv tools/qemu-xen/qemu-bridge-helper.c tools/qemu-xen/xen-bridge-helper.c || die
|
||||
|
||||
# Fix texi2html build error with new texi2html, qemu.doc.html
|
||||
sed -i -e "/texi2html -monolithic/s/-number//" tools/qemu-xen-traditional/Makefile || die
|
||||
|
||||
use api || sed -e "/SUBDIRS-\$(LIBXENAPI_BINDINGS) += libxen/d" -i tools/Makefile || die
|
||||
sed -e 's:$(MAKE) PYTHON=$(PYTHON) subdirs-$@:LC_ALL=C "$(MAKE)" PYTHON=$(PYTHON) subdirs-$@:' \
|
||||
-i tools/firmware/Makefile || die
|
||||
|
||||
# Drop .config, fixes to gcc-4.6
|
||||
sed -e '/-include $(XEN_ROOT)\/.config/d' -i Config.mk || die "Couldn't drop"
|
||||
|
||||
# if the user *really* wants to use their own custom-cflags, let them
|
||||
if use custom-cflags; then
|
||||
einfo "User wants their own CFLAGS - removing defaults"
|
||||
|
||||
# try and remove all the default cflags
|
||||
find "${S}" \( -name Makefile -o -name Rules.mk -o -name Config.mk \) \
|
||||
-exec sed \
|
||||
-e 's/CFLAGS\(.*\)=\(.*\)-O3\(.*\)/CFLAGS\1=\2\3/' \
|
||||
-e 's/CFLAGS\(.*\)=\(.*\)-march=i686\(.*\)/CFLAGS\1=\2\3/' \
|
||||
-e 's/CFLAGS\(.*\)=\(.*\)-fomit-frame-pointer\(.*\)/CFLAGS\1=\2\3/' \
|
||||
-e 's/CFLAGS\(.*\)=\(.*\)-g3*\s\(.*\)/CFLAGS\1=\2 \3/' \
|
||||
-e 's/CFLAGS\(.*\)=\(.*\)-O2\(.*\)/CFLAGS\1=\2\3/' \
|
||||
-i {} + || die "failed to re-set custom-cflags"
|
||||
else
|
||||
unset CFLAGS
|
||||
unset LDFLAGS
|
||||
unset ASFLAGS
|
||||
unset CPPFLAGS
|
||||
fi
|
||||
|
||||
if ! use pygrub; then
|
||||
sed -e '/^SUBDIRS-y += pygrub/d' -i tools/Makefile || die
|
||||
fi
|
||||
|
||||
if ! use python; then
|
||||
sed -e '/^SUBDIRS-y += python$/d' -i tools/Makefile || die
|
||||
fi
|
||||
|
||||
if ! use hvm; then
|
||||
sed -e '/SUBDIRS-$(CONFIG_X86) += firmware/d' -i tools/Makefile || die
|
||||
# Bug 351648
|
||||
elif ! use x86 && ! has x86 $(get_all_abis); then
|
||||
mkdir -p "${WORKDIR}"/extra-headers/gnu || die
|
||||
touch "${WORKDIR}"/extra-headers/gnu/stubs-32.h || die
|
||||
export CPATH="${WORKDIR}"/extra-headers
|
||||
fi
|
||||
|
||||
if use qemu; then
|
||||
if use sdl; then
|
||||
sed -i -e "s:\$\$source/configure:\0 --enable-sdl:" \
|
||||
tools/Makefile || die
|
||||
else
|
||||
sed -i -e "s:\${QEMU_ROOT\:\-\.}/configure:\0 --disable-sdl:" \
|
||||
tools/qemu-xen-traditional/xen-setup || die
|
||||
sed -i -e "s:\$\$source/configure:\0 --disable-sdl:" \
|
||||
tools/Makefile || die
|
||||
fi
|
||||
else
|
||||
# Don't bother with qemu, only needed for fully virtualised guests
|
||||
sed -e "s:install-tools\: tools/qemu-xen-traditional-dir:install-tools\: :g" -i Makefile || die
|
||||
fi
|
||||
|
||||
# Reset bash completion dir; Bug 472438
|
||||
sed -e "s:^BASH_COMPLETION_DIR ?= \$(CONFIG_DIR)/bash_completion.d:BASH_COMPLETION_DIR ?= $(get_bashcompdir):" \
|
||||
-i Config.mk || die
|
||||
sed -i -e "/bash-completion/s/xl\.sh/xl/g" tools/libxl/Makefile || die
|
||||
|
||||
# xencommons, Bug #492332, sed lighter weight than patching
|
||||
sed -e 's:\$QEMU_XEN -xen-domid:test -e "\$QEMU_XEN" \&\& &:' \
|
||||
-i tools/hotplug/Linux/init.d/xencommons.in || die
|
||||
|
||||
# fix bashishm
|
||||
sed -e '/Usage/s/\$//g' \
|
||||
-i tools/hotplug/Linux/init.d/xendriverdomain.in || die
|
||||
|
||||
# respect multilib, usr/lib/libcacard.so.0.0.0
|
||||
sed -e "/^libdir=/s/\/lib/\/$(get_libdir)/" \
|
||||
-i tools/qemu-xen/configure || die
|
||||
|
||||
#bug 518136, don't build 32bit exactuable for nomultilib profile
|
||||
if [[ "${ARCH}" == 'amd64' ]] && ! has_multilib_profile; then
|
||||
sed -i -e "/x86_emulator/d" tools/tests/Makefile || die
|
||||
fi
|
||||
|
||||
# uncomment lines in xl.conf
|
||||
sed -e 's:^#autoballoon=:autoballoon=:' \
|
||||
-e 's:^#lockfile=:lockfile=:' \
|
||||
-e 's:^#vif.default.script=:vif.default.script=:' \
|
||||
-i tools/examples/xl.conf || die
|
||||
|
||||
default
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
local myconf="--prefix=${PREFIX}/usr \
|
||||
--libdir=${PREFIX}/usr/$(get_libdir) \
|
||||
--libexecdir=${PREFIX}/usr/libexec \
|
||||
--localstatedir=${EPREFIX}/var \
|
||||
--disable-werror \
|
||||
--disable-xen \
|
||||
--enable-tools \
|
||||
--enable-docs \
|
||||
$(use_enable pam) \
|
||||
$(use_enable api xenapi) \
|
||||
$(use_enable ovmf) \
|
||||
$(use_enable ocaml ocamltools) \
|
||||
--with-xenstored=$(usex ocaml 'oxenstored' 'xenstored') \
|
||||
"
|
||||
|
||||
use system-seabios && myconf+=" --with-system-seabios=/usr/share/seabios/bios.bin"
|
||||
use system-qemu && myconf+=" --with-system-qemu=/usr/bin/qemu-system-x86_64"
|
||||
use amd64 && myconf+=" $(use_enable qemu-traditional)"
|
||||
econf ${myconf}
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
local myopt
|
||||
use debug && myopt="${myopt} debug=y"
|
||||
|
||||
if test-flag-CC -fno-strict-overflow; then
|
||||
append-flags -fno-strict-overflow
|
||||
fi
|
||||
|
||||
emake CC="$(tc-getCC)" LD="$(tc-getLD)" AR="$(tc-getAR)" RANLIB="$(tc-getRANLIB)" build-tools ${myopt}
|
||||
|
||||
if use doc; then
|
||||
emake -C docs build
|
||||
else
|
||||
emake -C docs man-pages
|
||||
fi
|
||||
}
|
||||
|
||||
src_install() {
|
||||
# Override auto-detection in the build system, bug #382573
|
||||
export INITD_DIR=/tmp/init.d
|
||||
export CONFIG_LEAF_DIR=../tmp/default
|
||||
|
||||
# Let the build system compile installed Python modules.
|
||||
local PYTHONDONTWRITEBYTECODE
|
||||
export PYTHONDONTWRITEBYTECODE
|
||||
|
||||
emake DESTDIR="${ED}" DOCDIR="/usr/share/doc/${PF}" \
|
||||
XEN_PYTHON_NATIVE_INSTALL=y install-tools
|
||||
|
||||
# Created at runtime
|
||||
rm -rv "${ED%/}/var/run" || die
|
||||
|
||||
# Fix the remaining Python shebangs.
|
||||
python_fix_shebang "${D}"
|
||||
|
||||
# Remove RedHat-specific stuff
|
||||
rm -rf "${D}"tmp || die
|
||||
|
||||
emake DESTDIR="${D}" DOCDIR="/usr/share/doc/${PF}" install-docs
|
||||
use doc && dodoc -r docs/{pdf,txt}
|
||||
dodoc ${DOCS[@]}
|
||||
|
||||
newconfd "${FILESDIR}"/xendomains.confd xendomains
|
||||
newconfd "${FILESDIR}"/xenstored.confd xenstored
|
||||
newconfd "${FILESDIR}"/xenconsoled.confd xenconsoled
|
||||
newinitd "${FILESDIR}"/xendomains.initd-r2 xendomains
|
||||
newinitd "${FILESDIR}"/xenstored.initd-r1 xenstored
|
||||
newinitd "${FILESDIR}"/xenconsoled.initd xenconsoled
|
||||
newinitd "${FILESDIR}"/xencommons.initd xencommons
|
||||
newconfd "${FILESDIR}"/xencommons.confd xencommons
|
||||
newinitd "${FILESDIR}"/xenqemudev.initd xenqemudev
|
||||
newconfd "${FILESDIR}"/xenqemudev.confd xenqemudev
|
||||
newinitd "${FILESDIR}"/xen-watchdog.initd xen-watchdog
|
||||
|
||||
if use screen; then
|
||||
cat "${FILESDIR}"/xendomains-screen.confd >> "${D}"/etc/conf.d/xendomains || die
|
||||
cp "${FILESDIR}"/xen-consoles.logrotate "${D}"/etc/xen/ || die
|
||||
keepdir /var/log/xen-consoles
|
||||
fi
|
||||
|
||||
# For -static-libs wrt Bug 384355
|
||||
if ! use static-libs; then
|
||||
rm -f "${D}"usr/$(get_libdir)/*.a "${D}"usr/$(get_libdir)/ocaml/*/*.a
|
||||
fi
|
||||
|
||||
# for xendomains
|
||||
keepdir /etc/xen/auto
|
||||
|
||||
# Remove files failing QA AFTER emake installs them, avoiding seeking absent files
|
||||
find "${D}" \( -name openbios-sparc32 -o -name openbios-sparc64 \
|
||||
-o -name openbios-ppc -o -name palcode-clipper \) -delete || die
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
elog "Official Xen Guide and the offical wiki page:"
|
||||
elog "https://wiki.gentoo.org/wiki/Xen"
|
||||
elog "https://wiki.xen.org/wiki/Main_Page"
|
||||
elog ""
|
||||
elog "Recommended to utilise the xencommons script to config sytem At boot"
|
||||
elog "Add by use of rc-update on completion of the install"
|
||||
|
||||
if ! use hvm; then
|
||||
echo
|
||||
elog "HVM (VT-x and AMD-V) support has been disabled. If you need hvm"
|
||||
elog "support enable the hvm use flag."
|
||||
elog "An x86 or amd64 system is required to build HVM support."
|
||||
fi
|
||||
|
||||
if use qemu; then
|
||||
elog "The qemu-bridge-helper is renamed to the xen-bridge-helper in the in source"
|
||||
elog "build of qemu. This allows for app-emulation/qemu to be emerged concurrently"
|
||||
elog "with the qemu capable xen. It is up to the user to distinguish between and utilise"
|
||||
elog "the qemu-bridge-helper and the xen-bridge-helper. File bugs of any issues that arise"
|
||||
fi
|
||||
}
|
@ -1,457 +0,0 @@
|
||||
# Copyright 1999-2018 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=6
|
||||
|
||||
PYTHON_COMPAT=( python2_7 )
|
||||
PYTHON_REQ_USE='ncurses,xml,threads'
|
||||
|
||||
inherit bash-completion-r1 eutils flag-o-matic multilib python-single-r1 toolchain-funcs versionator
|
||||
|
||||
MY_PV=${PV/_/-}
|
||||
MAJOR_V="$(get_version_component_range 1-2)"
|
||||
|
||||
if [[ $PV == *9999 ]]; then
|
||||
inherit git-r3
|
||||
REPO="xen.git"
|
||||
EGIT_REPO_URI="git://xenbits.xen.org/${REPO}"
|
||||
S="${WORKDIR}/${REPO}"
|
||||
else
|
||||
KEYWORDS="~amd64 ~arm ~arm64 ~x86"
|
||||
UPSTREAM_VER=0
|
||||
SECURITY_VER=
|
||||
# xen-tools's gentoo patches tarball
|
||||
GENTOO_VER=14
|
||||
# xen-tools's gentoo patches version which apply to this specific ebuild
|
||||
GENTOO_GPV=0
|
||||
# xen-tools ovmf's patches
|
||||
OVMF_VER=3
|
||||
|
||||
SEABIOS_VER=1.10.0
|
||||
# OVMF upstream 5920a9d16b1ab887c2858224316a98e961d71b05
|
||||
OVMF_PV=20170321
|
||||
|
||||
[[ -n ${UPSTREAM_VER} ]] && \
|
||||
UPSTREAM_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${P/-tools/}-upstream-patches-${UPSTREAM_VER}.tar.xz
|
||||
https://github.com/hydrapolic/gentoo-dist/raw/master/xen/${P/-tools/}-upstream-patches-${UPSTREAM_VER}.tar.xz"
|
||||
[[ -n ${SECURITY_VER} ]] && \
|
||||
SECURITY_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${PN/-tools}-security-patches-${SECURITY_VER}.tar.xz"
|
||||
[[ -n ${GENTOO_VER} ]] && \
|
||||
GENTOO_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${PN/-tools}-gentoo-patches-${GENTOO_VER}.tar.xz
|
||||
https://github.com/hydrapolic/gentoo-dist/raw/master/xen/${PN/-tools/}-gentoo-patches-${GENTOO_VER}.tar.xz"
|
||||
[[ -n ${OVMF_VER} ]] && \
|
||||
OVMF_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${PN/-tools}-ovmf-patches-${OVMF_VER}.tar.xz"
|
||||
|
||||
SRC_URI="https://downloads.xenproject.org/release/xen/${MY_PV}/xen-${MY_PV}.tar.gz
|
||||
http://code.coreboot.org/p/seabios/downloads/get/seabios-${SEABIOS_VER}.tar.gz
|
||||
https://dev.gentoo.org/~dlan/distfiles/seabios-${SEABIOS_VER}.tar.gz
|
||||
ovmf? ( https://dev.gentoo.org/~dlan/distfiles/ovmf-${OVMF_PV}.tar.xz
|
||||
${OVMF_PATCHSET_URI} )
|
||||
${UPSTREAM_PATCHSET_URI}
|
||||
${SECURITY_PATCHSET_URI}
|
||||
${GENTOO_PATCHSET_URI}"
|
||||
|
||||
S="${WORKDIR}/xen-${MY_PV}"
|
||||
fi
|
||||
|
||||
DESCRIPTION="Xen tools including QEMU and xl"
|
||||
HOMEPAGE="https://www.xenproject.org"
|
||||
DOCS=( README docs/README.xen-bugtool )
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0/${MAJOR_V}"
|
||||
# Inclusion of IUSE ocaml on stabalizing requires maintainer of ocaml to (get off his hands and) make
|
||||
# >=dev-lang/ocaml-4 stable
|
||||
# Masked in profiles/eapi-5-files instead
|
||||
IUSE="api custom-cflags debug doc flask hvm ocaml ovmf +pam pygrub python +qemu +qemu-traditional screen sdl static-libs system-qemu system-seabios"
|
||||
|
||||
REQUIRED_USE="
|
||||
${PYTHON_REQUIRED_USE}
|
||||
pygrub? ( python )
|
||||
ovmf? ( hvm )
|
||||
^^ ( qemu system-qemu )"
|
||||
|
||||
COMMON_DEPEND="
|
||||
sys-apps/pciutils
|
||||
dev-libs/lzo:2
|
||||
dev-libs/glib:2
|
||||
dev-libs/yajl
|
||||
dev-libs/libaio
|
||||
dev-libs/libgcrypt:0
|
||||
sys-libs/zlib
|
||||
${PYTHON_DEPS}
|
||||
"
|
||||
|
||||
DEPEND="${COMMON_DEPEND}
|
||||
>=sys-kernel/linux-headers-4.11
|
||||
dev-python/lxml[${PYTHON_USEDEP}]
|
||||
x86? ( sys-devel/dev86
|
||||
sys-power/iasl )
|
||||
pam? ( dev-python/pypam[${PYTHON_USEDEP}] )
|
||||
api? ( dev-libs/libxml2
|
||||
net-misc/curl )
|
||||
ovmf? (
|
||||
!arm? ( !arm64? ( dev-lang/nasm ) )
|
||||
$(python_gen_impl_dep sqlite)
|
||||
)
|
||||
!amd64? ( >=sys-apps/dtc-1.4.0 )
|
||||
amd64? ( sys-devel/bin86
|
||||
system-seabios? ( sys-firmware/seabios )
|
||||
sys-firmware/ipxe
|
||||
sys-devel/dev86
|
||||
sys-power/iasl )
|
||||
dev-lang/perl
|
||||
app-misc/pax-utils
|
||||
doc? (
|
||||
app-text/ghostscript-gpl
|
||||
app-text/pandoc
|
||||
dev-python/markdown[${PYTHON_USEDEP}]
|
||||
dev-texlive/texlive-latexextra
|
||||
media-gfx/transfig
|
||||
)
|
||||
hvm? ( x11-base/xorg-proto )
|
||||
qemu? (
|
||||
app-arch/snappy:=
|
||||
x11-libs/pixman
|
||||
sdl? ( media-libs/libsdl[X] )
|
||||
)
|
||||
system-qemu? ( app-emulation/qemu[xen] )
|
||||
ocaml? ( dev-ml/findlib
|
||||
>=dev-lang/ocaml-4 )"
|
||||
|
||||
RDEPEND="${COMMON_DEPEND}
|
||||
sys-apps/iproute2[-minimal]
|
||||
net-misc/bridge-utils
|
||||
screen? (
|
||||
app-misc/screen
|
||||
app-admin/logrotate
|
||||
)"
|
||||
|
||||
# hvmloader is used to bootstrap a fully virtualized kernel
|
||||
# Approved by QA team in bug #144032
|
||||
QA_WX_LOAD="
|
||||
usr/libexec/xen/boot/hvmloader
|
||||
usr/share/qemu-xen/qemu/s390-ccw.img
|
||||
usr/share/qemu-xen/qemu/u-boot.e500
|
||||
"
|
||||
|
||||
QA_PREBUILT="
|
||||
usr/libexec/xen/bin/ivshmem-client
|
||||
usr/libexec/xen/bin/ivshmem-server
|
||||
usr/libexec/xen/bin/qemu-img
|
||||
usr/libexec/xen/bin/qemu-io
|
||||
usr/libexec/xen/bin/qemu-keymap
|
||||
usr/libexec/xen/bin/qemu-nbd
|
||||
usr/libexec/xen/bin/qemu-pr-helper
|
||||
usr/libexec/xen/bin/qemu-system-i386
|
||||
usr/libexec/xen/bin/virtfs-proxy-helper
|
||||
usr/libexec/xen/libexec/xen-bridge-helper
|
||||
usr/share/qemu-xen/qemu/s390-ccw.img
|
||||
usr/share/qemu-xen/qemu/s390-netboot.img
|
||||
usr/share/qemu-xen/qemu/u-boot.e500
|
||||
"
|
||||
|
||||
RESTRICT="test"
|
||||
|
||||
pkg_setup() {
|
||||
python_setup
|
||||
export "CONFIG_LOMOUNT=y"
|
||||
|
||||
#bug 522642, disable compile tools/tests
|
||||
export "CONFIG_TESTS=n"
|
||||
|
||||
if [[ -z ${XEN_TARGET_ARCH} ]] ; then
|
||||
if use x86 && use amd64; then
|
||||
die "Confusion! Both x86 and amd64 are set in your use flags!"
|
||||
elif use x86; then
|
||||
export XEN_TARGET_ARCH="x86_32"
|
||||
elif use amd64 ; then
|
||||
export XEN_TARGET_ARCH="x86_64"
|
||||
elif use arm; then
|
||||
export XEN_TARGET_ARCH="arm32"
|
||||
elif use arm64; then
|
||||
export XEN_TARGET_ARCH="arm64"
|
||||
else
|
||||
die "Unsupported architecture!"
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
local i
|
||||
|
||||
# Upstream's patchset
|
||||
if [[ -n ${UPSTREAM_VER} ]]; then
|
||||
einfo "Try to apply Xen Upstream patch set"
|
||||
eapply "${WORKDIR}"/patches-upstream
|
||||
fi
|
||||
|
||||
# Security patchset
|
||||
if [[ -n ${SECURITY_VER} ]]; then
|
||||
einfo "Try to apply Xen Security patch set"
|
||||
# apply main xen patches
|
||||
# Two parallel systems, both work side by side
|
||||
# Over time they may concdense into one. This will suffice for now
|
||||
EPATCH_SUFFIX="patch"
|
||||
EPATCH_FORCE="yes"
|
||||
|
||||
source "${WORKDIR}"/patches-security/${PV}.conf || die
|
||||
|
||||
for i in ${XEN_SECURITY_MAIN}; do
|
||||
eapply "${WORKDIR}"/patches-security/xen/$i
|
||||
done
|
||||
|
||||
# apply qemu-xen/upstream patches
|
||||
pushd "${S}"/tools/qemu-xen/ > /dev/null
|
||||
for i in ${XEN_SECURITY_QEMUU}; do
|
||||
eapply "${WORKDIR}"/patches-security/qemuu/$i
|
||||
done
|
||||
popd > /dev/null
|
||||
|
||||
# apply qemu-traditional patches
|
||||
pushd "${S}"/tools/qemu-xen-traditional/ > /dev/null
|
||||
for i in ${XEN_SECURITY_QEMUT}; do
|
||||
eapply "${WORKDIR}"/patches-security/qemut/$i
|
||||
done
|
||||
popd > /dev/null
|
||||
fi
|
||||
|
||||
# move before Gentoo patch, one patch should apply to seabios, to fix gcc-4.5.x build err
|
||||
mv ../seabios-${SEABIOS_VER} tools/firmware/seabios-dir-remote || die
|
||||
pushd tools/firmware/ > /dev/null
|
||||
ln -s seabios-dir-remote seabios-dir || die
|
||||
popd > /dev/null
|
||||
|
||||
# Gentoo's patchset
|
||||
if [[ -n ${GENTOO_VER} && -n ${GENTOO_GPV} ]]; then
|
||||
einfo "Try to apply Gentoo specific patch set"
|
||||
source "${FILESDIR}"/gentoo-patches.conf || die
|
||||
_gpv=_gpv_${PN/-/_}_${PV//./}_${GENTOO_GPV}
|
||||
for i in ${!_gpv}; do
|
||||
eapply "${WORKDIR}"/patches-gentoo/$i
|
||||
done
|
||||
fi
|
||||
|
||||
# Ovmf's patchset
|
||||
if use ovmf; then
|
||||
if [[ -n ${OVMF_VER} ]];then
|
||||
einfo "Try to apply Ovmf patch set"
|
||||
pushd "${WORKDIR}"/ovmf-*/ > /dev/null
|
||||
eapply "${WORKDIR}"/patches-ovmf
|
||||
popd > /dev/null
|
||||
fi
|
||||
mv ../ovmf-${OVMF_PV} tools/firmware/ovmf-dir-remote || die
|
||||
fi
|
||||
|
||||
mv tools/qemu-xen/qemu-bridge-helper.c tools/qemu-xen/xen-bridge-helper.c || die
|
||||
|
||||
# Fix texi2html build error with new texi2html, qemu.doc.html
|
||||
sed -i -e "/texi2html -monolithic/s/-number//" tools/qemu-xen-traditional/Makefile || die
|
||||
|
||||
use api || sed -e "/SUBDIRS-\$(LIBXENAPI_BINDINGS) += libxen/d" -i tools/Makefile || die
|
||||
sed -e 's:$(MAKE) PYTHON=$(PYTHON) subdirs-$@:LC_ALL=C "$(MAKE)" PYTHON=$(PYTHON) subdirs-$@:' \
|
||||
-i tools/firmware/Makefile || die
|
||||
|
||||
# Drop .config, fixes to gcc-4.6
|
||||
sed -e '/-include $(XEN_ROOT)\/.config/d' -i Config.mk || die "Couldn't drop"
|
||||
|
||||
# if the user *really* wants to use their own custom-cflags, let them
|
||||
if use custom-cflags; then
|
||||
einfo "User wants their own CFLAGS - removing defaults"
|
||||
|
||||
# try and remove all the default cflags
|
||||
find "${S}" \( -name Makefile -o -name Rules.mk -o -name Config.mk \) \
|
||||
-exec sed \
|
||||
-e 's/CFLAGS\(.*\)=\(.*\)-O3\(.*\)/CFLAGS\1=\2\3/' \
|
||||
-e 's/CFLAGS\(.*\)=\(.*\)-march=i686\(.*\)/CFLAGS\1=\2\3/' \
|
||||
-e 's/CFLAGS\(.*\)=\(.*\)-fomit-frame-pointer\(.*\)/CFLAGS\1=\2\3/' \
|
||||
-e 's/CFLAGS\(.*\)=\(.*\)-g3*\s\(.*\)/CFLAGS\1=\2 \3/' \
|
||||
-e 's/CFLAGS\(.*\)=\(.*\)-O2\(.*\)/CFLAGS\1=\2\3/' \
|
||||
-i {} + || die "failed to re-set custom-cflags"
|
||||
else
|
||||
unset CFLAGS
|
||||
unset LDFLAGS
|
||||
unset ASFLAGS
|
||||
unset CPPFLAGS
|
||||
fi
|
||||
|
||||
if ! use pygrub; then
|
||||
sed -e '/^SUBDIRS-y += pygrub/d' -i tools/Makefile || die
|
||||
fi
|
||||
|
||||
if ! use python; then
|
||||
sed -e '/^SUBDIRS-y += python$/d' -i tools/Makefile || die
|
||||
fi
|
||||
|
||||
if ! use hvm; then
|
||||
sed -e '/SUBDIRS-$(CONFIG_X86) += firmware/d' -i tools/Makefile || die
|
||||
# Bug 351648
|
||||
elif ! use x86 && ! has x86 $(get_all_abis); then
|
||||
mkdir -p "${WORKDIR}"/extra-headers/gnu || die
|
||||
touch "${WORKDIR}"/extra-headers/gnu/stubs-32.h || die
|
||||
export CPATH="${WORKDIR}"/extra-headers
|
||||
fi
|
||||
|
||||
if use qemu; then
|
||||
if use sdl; then
|
||||
sed -i -e "s:\$\$source/configure:\0 --enable-sdl:" \
|
||||
tools/Makefile || die
|
||||
else
|
||||
sed -i -e "s:\${QEMU_ROOT\:\-\.}/configure:\0 --disable-sdl:" \
|
||||
tools/qemu-xen-traditional/xen-setup || die
|
||||
sed -i -e "s:\$\$source/configure:\0 --disable-sdl:" \
|
||||
tools/Makefile || die
|
||||
fi
|
||||
else
|
||||
# Don't bother with qemu, only needed for fully virtualised guests
|
||||
sed -e "s:install-tools\: tools/qemu-xen-traditional-dir:install-tools\: :g" -i Makefile || die
|
||||
fi
|
||||
|
||||
# Reset bash completion dir; Bug 472438
|
||||
sed -e "s:^BASH_COMPLETION_DIR ?= \$(CONFIG_DIR)/bash_completion.d:BASH_COMPLETION_DIR ?= $(get_bashcompdir):" \
|
||||
-i Config.mk || die
|
||||
sed -i -e "/bash-completion/s/xl\.sh/xl/g" tools/libxl/Makefile || die
|
||||
|
||||
# xencommons, Bug #492332, sed lighter weight than patching
|
||||
sed -e 's:\$QEMU_XEN -xen-domid:test -e "\$QEMU_XEN" \&\& &:' \
|
||||
-i tools/hotplug/Linux/init.d/xencommons.in || die
|
||||
|
||||
# fix bashishm
|
||||
sed -e '/Usage/s/\$//g' \
|
||||
-i tools/hotplug/Linux/init.d/xendriverdomain.in || die
|
||||
|
||||
# respect multilib, usr/lib/libcacard.so.0.0.0
|
||||
sed -e "/^libdir=/s/\/lib/\/$(get_libdir)/" \
|
||||
-i tools/qemu-xen/configure || die
|
||||
|
||||
#bug 518136, don't build 32bit exactuable for nomultilib profile
|
||||
if [[ "${ARCH}" == 'amd64' ]] && ! has_multilib_profile; then
|
||||
sed -i -e "/x86_emulator/d" tools/tests/Makefile || die
|
||||
fi
|
||||
|
||||
# uncomment lines in xl.conf
|
||||
sed -e 's:^#autoballoon=:autoballoon=:' \
|
||||
-e 's:^#lockfile=:lockfile=:' \
|
||||
-e 's:^#vif.default.script=:vif.default.script=:' \
|
||||
-i tools/examples/xl.conf || die
|
||||
|
||||
default
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
local myconf="--prefix=${PREFIX}/usr \
|
||||
--libdir=${PREFIX}/usr/$(get_libdir) \
|
||||
--libexecdir=${PREFIX}/usr/libexec \
|
||||
--localstatedir=${EPREFIX}/var \
|
||||
--disable-werror \
|
||||
--disable-xen \
|
||||
--enable-tools \
|
||||
--enable-docs \
|
||||
$(use_enable pam) \
|
||||
$(use_enable api xenapi) \
|
||||
$(use_enable ovmf) \
|
||||
$(use_enable ocaml ocamltools) \
|
||||
--with-xenstored=$(usex ocaml 'oxenstored' 'xenstored') \
|
||||
"
|
||||
|
||||
use system-seabios && myconf+=" --with-system-seabios=/usr/share/seabios/bios.bin"
|
||||
use system-qemu && myconf+=" --with-system-qemu=/usr/bin/qemu-system-x86_64"
|
||||
use amd64 && myconf+=" $(use_enable qemu-traditional)"
|
||||
econf ${myconf}
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
local myopt
|
||||
use debug && myopt="${myopt} debug=y"
|
||||
|
||||
if test-flag-CC -fno-strict-overflow; then
|
||||
append-flags -fno-strict-overflow
|
||||
fi
|
||||
|
||||
emake CC="$(tc-getCC)" LD="$(tc-getLD)" AR="$(tc-getAR)" RANLIB="$(tc-getRANLIB)" build-tools ${myopt}
|
||||
|
||||
if use doc; then
|
||||
emake -C docs build
|
||||
else
|
||||
emake -C docs man-pages
|
||||
fi
|
||||
}
|
||||
|
||||
src_install() {
|
||||
# Override auto-detection in the build system, bug #382573
|
||||
export INITD_DIR=/tmp/init.d
|
||||
export CONFIG_LEAF_DIR=../tmp/default
|
||||
|
||||
# Let the build system compile installed Python modules.
|
||||
local PYTHONDONTWRITEBYTECODE
|
||||
export PYTHONDONTWRITEBYTECODE
|
||||
|
||||
emake DESTDIR="${ED}" DOCDIR="/usr/share/doc/${PF}" \
|
||||
XEN_PYTHON_NATIVE_INSTALL=y install-tools
|
||||
|
||||
# Created at runtime
|
||||
rm -rv "${ED%/}/var/run" || die
|
||||
|
||||
# Fix the remaining Python shebangs.
|
||||
python_fix_shebang "${D}"
|
||||
|
||||
# Remove RedHat-specific stuff
|
||||
rm -rf "${D}"tmp || die
|
||||
|
||||
emake DESTDIR="${D}" DOCDIR="/usr/share/doc/${PF}" install-docs
|
||||
use doc && dodoc -r docs/{pdf,txt}
|
||||
dodoc ${DOCS[@]}
|
||||
|
||||
newconfd "${FILESDIR}"/xendomains.confd xendomains
|
||||
newconfd "${FILESDIR}"/xenstored.confd xenstored
|
||||
newconfd "${FILESDIR}"/xenconsoled.confd xenconsoled
|
||||
newinitd "${FILESDIR}"/xendomains.initd-r2 xendomains
|
||||
newinitd "${FILESDIR}"/xenstored.initd-r1 xenstored
|
||||
newinitd "${FILESDIR}"/xenconsoled.initd xenconsoled
|
||||
newinitd "${FILESDIR}"/xencommons.initd xencommons
|
||||
newconfd "${FILESDIR}"/xencommons.confd xencommons
|
||||
newinitd "${FILESDIR}"/xenqemudev.initd xenqemudev
|
||||
newconfd "${FILESDIR}"/xenqemudev.confd xenqemudev
|
||||
newinitd "${FILESDIR}"/xen-watchdog.initd xen-watchdog
|
||||
|
||||
if use screen; then
|
||||
cat "${FILESDIR}"/xendomains-screen.confd >> "${D}"/etc/conf.d/xendomains || die
|
||||
cp "${FILESDIR}"/xen-consoles.logrotate "${D}"/etc/xen/ || die
|
||||
keepdir /var/log/xen-consoles
|
||||
fi
|
||||
|
||||
# For -static-libs wrt Bug 384355
|
||||
if ! use static-libs; then
|
||||
rm -f "${D}"usr/$(get_libdir)/*.a "${D}"usr/$(get_libdir)/ocaml/*/*.a
|
||||
fi
|
||||
|
||||
# for xendomains
|
||||
keepdir /etc/xen/auto
|
||||
|
||||
# Remove files failing QA AFTER emake installs them, avoiding seeking absent files
|
||||
find "${D}" \( -name openbios-sparc32 -o -name openbios-sparc64 \
|
||||
-o -name openbios-ppc -o -name palcode-clipper \) -delete || die
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
elog "Official Xen Guide and the offical wiki page:"
|
||||
elog "https://wiki.gentoo.org/wiki/Xen"
|
||||
elog "https://wiki.xen.org/wiki/Main_Page"
|
||||
elog ""
|
||||
elog "Recommended to utilise the xencommons script to config sytem At boot"
|
||||
elog "Add by use of rc-update on completion of the install"
|
||||
|
||||
if ! use hvm; then
|
||||
echo
|
||||
elog "HVM (VT-x and AMD-V) support has been disabled. If you need hvm"
|
||||
elog "support enable the hvm use flag."
|
||||
elog "An x86 or amd64 system is required to build HVM support."
|
||||
fi
|
||||
|
||||
if use qemu; then
|
||||
elog "The qemu-bridge-helper is renamed to the xen-bridge-helper in the in source"
|
||||
elog "build of qemu. This allows for app-emulation/qemu to be emerged concurrently"
|
||||
elog "with the qemu capable xen. It is up to the user to distinguish between and utilise"
|
||||
elog "the qemu-bridge-helper and the xen-bridge-helper. File bugs of any issues that arise"
|
||||
fi
|
||||
}
|
@ -1,453 +0,0 @@
|
||||
# Copyright 1999-2018 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=6
|
||||
|
||||
PYTHON_COMPAT=( python2_7 )
|
||||
PYTHON_REQ_USE='ncurses,xml,threads'
|
||||
|
||||
inherit bash-completion-r1 eutils flag-o-matic multilib python-single-r1 toolchain-funcs versionator
|
||||
|
||||
MY_PV=${PV/_/-}
|
||||
MAJOR_V="$(get_version_component_range 1-2)"
|
||||
|
||||
if [[ $PV == *9999 ]]; then
|
||||
inherit git-r3
|
||||
REPO="xen.git"
|
||||
EGIT_REPO_URI="git://xenbits.xen.org/${REPO}"
|
||||
S="${WORKDIR}/${REPO}"
|
||||
else
|
||||
KEYWORDS="amd64 ~arm ~arm64 x86"
|
||||
UPSTREAM_VER=2
|
||||
SECURITY_VER=
|
||||
# xen-tools's gentoo patches tarball
|
||||
GENTOO_VER=12
|
||||
# xen-tools's gentoo patches version which apply to this specific ebuild
|
||||
GENTOO_GPV=0
|
||||
# xen-tools ovmf's patches
|
||||
OVMF_VER=3
|
||||
|
||||
SEABIOS_VER=1.10.0
|
||||
# OVMF upstream 5920a9d16b1ab887c2858224316a98e961d71b05
|
||||
OVMF_PV=20170321
|
||||
|
||||
[[ -n ${UPSTREAM_VER} ]] && \
|
||||
UPSTREAM_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${P/-tools/}-upstream-patches-${UPSTREAM_VER}.tar.xz"
|
||||
[[ -n ${SECURITY_VER} ]] && \
|
||||
SECURITY_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${PN/-tools}-security-patches-${SECURITY_VER}.tar.xz"
|
||||
[[ -n ${GENTOO_VER} ]] && \
|
||||
GENTOO_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${PN/-tools}-gentoo-patches-${GENTOO_VER}.tar.xz"
|
||||
[[ -n ${OVMF_VER} ]] && \
|
||||
OVMF_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${PN/-tools}-ovmf-patches-${OVMF_VER}.tar.xz"
|
||||
|
||||
SRC_URI="https://downloads.xenproject.org/release/xen/${MY_PV}/xen-${MY_PV}.tar.gz
|
||||
http://code.coreboot.org/p/seabios/downloads/get/seabios-${SEABIOS_VER}.tar.gz
|
||||
https://dev.gentoo.org/~dlan/distfiles/seabios-${SEABIOS_VER}.tar.gz
|
||||
ovmf? ( https://dev.gentoo.org/~dlan/distfiles/ovmf-${OVMF_PV}.tar.xz
|
||||
${OVMF_PATCHSET_URI} )
|
||||
${UPSTREAM_PATCHSET_URI}
|
||||
${SECURITY_PATCHSET_URI}
|
||||
${GENTOO_PATCHSET_URI}"
|
||||
|
||||
S="${WORKDIR}/xen-${MY_PV}"
|
||||
fi
|
||||
|
||||
DESCRIPTION="Xen tools including QEMU and xl"
|
||||
HOMEPAGE="https://www.xenproject.org"
|
||||
DOCS=( README docs/README.xen-bugtool )
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0/${MAJOR_V}"
|
||||
# Inclusion of IUSE ocaml on stabalizing requires maintainer of ocaml to (get off his hands and) make
|
||||
# >=dev-lang/ocaml-4 stable
|
||||
# Masked in profiles/eapi-5-files instead
|
||||
IUSE="api custom-cflags debug doc flask hvm ocaml ovmf +pam pygrub python +qemu +qemu-traditional screen sdl static-libs system-qemu system-seabios"
|
||||
|
||||
REQUIRED_USE="
|
||||
${PYTHON_REQUIRED_USE}
|
||||
pygrub? ( python )
|
||||
ovmf? ( hvm )
|
||||
^^ ( qemu system-qemu )"
|
||||
|
||||
COMMON_DEPEND="
|
||||
sys-apps/pciutils
|
||||
dev-libs/lzo:2
|
||||
dev-libs/glib:2
|
||||
dev-libs/yajl
|
||||
dev-libs/libaio
|
||||
dev-libs/libgcrypt:0
|
||||
sys-libs/zlib
|
||||
${PYTHON_DEPS}
|
||||
"
|
||||
|
||||
DEPEND="${COMMON_DEPEND}
|
||||
>=sys-kernel/linux-headers-4.11
|
||||
dev-python/lxml[${PYTHON_USEDEP}]
|
||||
x86? ( sys-devel/dev86
|
||||
sys-power/iasl )
|
||||
pam? ( dev-python/pypam[${PYTHON_USEDEP}] )
|
||||
api? ( dev-libs/libxml2
|
||||
net-misc/curl )
|
||||
ovmf? (
|
||||
!arm? ( !arm64? ( dev-lang/nasm ) )
|
||||
$(python_gen_impl_dep sqlite)
|
||||
)
|
||||
!amd64? ( >=sys-apps/dtc-1.4.0 )
|
||||
amd64? ( sys-devel/bin86
|
||||
system-seabios? ( sys-firmware/seabios )
|
||||
sys-firmware/ipxe
|
||||
sys-devel/dev86
|
||||
sys-power/iasl )
|
||||
dev-lang/perl
|
||||
app-misc/pax-utils
|
||||
doc? (
|
||||
app-text/ghostscript-gpl
|
||||
app-text/pandoc
|
||||
dev-python/markdown[${PYTHON_USEDEP}]
|
||||
dev-texlive/texlive-latexextra
|
||||
media-gfx/transfig
|
||||
)
|
||||
hvm? ( x11-base/xorg-proto
|
||||
!net-libs/libiscsi )
|
||||
qemu? (
|
||||
app-arch/snappy:=
|
||||
x11-libs/pixman
|
||||
sdl? ( media-libs/libsdl[X] )
|
||||
)
|
||||
system-qemu? ( app-emulation/qemu[xen] )
|
||||
ocaml? ( dev-ml/findlib
|
||||
>=dev-lang/ocaml-4 )"
|
||||
|
||||
RDEPEND="${COMMON_DEPEND}
|
||||
sys-apps/iproute2[-minimal]
|
||||
net-misc/bridge-utils
|
||||
screen? (
|
||||
app-misc/screen
|
||||
app-admin/logrotate
|
||||
)"
|
||||
|
||||
# hvmloader is used to bootstrap a fully virtualized kernel
|
||||
# Approved by QA team in bug #144032
|
||||
QA_WX_LOAD="
|
||||
usr/libexec/xen/boot/hvmloader
|
||||
usr/share/qemu-xen/qemu/s390-ccw.img
|
||||
usr/share/qemu-xen/qemu/u-boot.e500
|
||||
"
|
||||
|
||||
QA_PREBUILT="
|
||||
usr/libexec/xen/bin/ivshmem-client
|
||||
usr/libexec/xen/bin/ivshmem-server
|
||||
usr/libexec/xen/bin/qemu-img
|
||||
usr/libexec/xen/bin/qemu-io
|
||||
usr/libexec/xen/bin/qemu-nbd
|
||||
usr/libexec/xen/bin/qemu-system-i386
|
||||
usr/libexec/xen/bin/virtfs-proxy-helper
|
||||
usr/libexec/xen/libexec/xen-bridge-helper
|
||||
usr/share/qemu-xen/qemu/s390-ccw.img
|
||||
usr/share/qemu-xen/qemu/u-boot.e500
|
||||
"
|
||||
|
||||
RESTRICT="test"
|
||||
|
||||
pkg_setup() {
|
||||
python_setup
|
||||
export "CONFIG_LOMOUNT=y"
|
||||
|
||||
#bug 522642, disable compile tools/tests
|
||||
export "CONFIG_TESTS=n"
|
||||
|
||||
if [[ -z ${XEN_TARGET_ARCH} ]] ; then
|
||||
if use x86 && use amd64; then
|
||||
die "Confusion! Both x86 and amd64 are set in your use flags!"
|
||||
elif use x86; then
|
||||
export XEN_TARGET_ARCH="x86_32"
|
||||
elif use amd64 ; then
|
||||
export XEN_TARGET_ARCH="x86_64"
|
||||
elif use arm; then
|
||||
export XEN_TARGET_ARCH="arm32"
|
||||
elif use arm64; then
|
||||
export XEN_TARGET_ARCH="arm64"
|
||||
else
|
||||
die "Unsupported architecture!"
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
local i
|
||||
|
||||
# Upstream's patchset
|
||||
if [[ -n ${UPSTREAM_VER} ]]; then
|
||||
einfo "Try to apply Xen Upstream patch set"
|
||||
eapply "${WORKDIR}"/patches-upstream
|
||||
fi
|
||||
|
||||
# Security patchset
|
||||
if [[ -n ${SECURITY_VER} ]]; then
|
||||
einfo "Try to apply Xen Security patch set"
|
||||
# apply main xen patches
|
||||
# Two parallel systems, both work side by side
|
||||
# Over time they may concdense into one. This will suffice for now
|
||||
EPATCH_SUFFIX="patch"
|
||||
EPATCH_FORCE="yes"
|
||||
|
||||
source "${WORKDIR}"/patches-security/${PV}.conf || die
|
||||
|
||||
for i in ${XEN_SECURITY_MAIN}; do
|
||||
eapply "${WORKDIR}"/patches-security/xen/$i
|
||||
done
|
||||
|
||||
# apply qemu-xen/upstream patches
|
||||
pushd "${S}"/tools/qemu-xen/ > /dev/null
|
||||
for i in ${XEN_SECURITY_QEMUU}; do
|
||||
eapply "${WORKDIR}"/patches-security/qemuu/$i
|
||||
done
|
||||
popd > /dev/null
|
||||
|
||||
# apply qemu-traditional patches
|
||||
pushd "${S}"/tools/qemu-xen-traditional/ > /dev/null
|
||||
for i in ${XEN_SECURITY_QEMUT}; do
|
||||
eapply "${WORKDIR}"/patches-security/qemut/$i
|
||||
done
|
||||
popd > /dev/null
|
||||
fi
|
||||
|
||||
# move before Gentoo patch, one patch should apply to seabios, to fix gcc-4.5.x build err
|
||||
mv ../seabios-${SEABIOS_VER} tools/firmware/seabios-dir-remote || die
|
||||
pushd tools/firmware/ > /dev/null
|
||||
ln -s seabios-dir-remote seabios-dir || die
|
||||
popd > /dev/null
|
||||
|
||||
# Gentoo's patchset
|
||||
if [[ -n ${GENTOO_VER} && -n ${GENTOO_GPV} ]]; then
|
||||
einfo "Try to apply Gentoo specific patch set"
|
||||
source "${FILESDIR}"/gentoo-patches.conf || die
|
||||
_gpv=_gpv_${PN/-/_}_${PV//./}_${GENTOO_GPV}
|
||||
for i in ${!_gpv}; do
|
||||
eapply "${WORKDIR}"/patches-gentoo/$i
|
||||
done
|
||||
fi
|
||||
|
||||
# Ovmf's patchset
|
||||
if use ovmf; then
|
||||
if [[ -n ${OVMF_VER} ]];then
|
||||
einfo "Try to apply Ovmf patch set"
|
||||
pushd "${WORKDIR}"/ovmf-*/ > /dev/null
|
||||
eapply "${WORKDIR}"/patches-ovmf
|
||||
popd > /dev/null
|
||||
fi
|
||||
mv ../ovmf-${OVMF_PV} tools/firmware/ovmf-dir-remote || die
|
||||
fi
|
||||
|
||||
mv tools/qemu-xen/qemu-bridge-helper.c tools/qemu-xen/xen-bridge-helper.c || die
|
||||
|
||||
# Fix texi2html build error with new texi2html, qemu.doc.html
|
||||
sed -i -e "/texi2html -monolithic/s/-number//" tools/qemu-xen-traditional/Makefile || die
|
||||
|
||||
use api || sed -e "/SUBDIRS-\$(LIBXENAPI_BINDINGS) += libxen/d" -i tools/Makefile || die
|
||||
sed -e 's:$(MAKE) PYTHON=$(PYTHON) subdirs-$@:LC_ALL=C "$(MAKE)" PYTHON=$(PYTHON) subdirs-$@:' \
|
||||
-i tools/firmware/Makefile || die
|
||||
|
||||
# Drop .config, fixes to gcc-4.6
|
||||
sed -e '/-include $(XEN_ROOT)\/.config/d' -i Config.mk || die "Couldn't drop"
|
||||
|
||||
# if the user *really* wants to use their own custom-cflags, let them
|
||||
if use custom-cflags; then
|
||||
einfo "User wants their own CFLAGS - removing defaults"
|
||||
|
||||
# try and remove all the default cflags
|
||||
find "${S}" \( -name Makefile -o -name Rules.mk -o -name Config.mk \) \
|
||||
-exec sed \
|
||||
-e 's/CFLAGS\(.*\)=\(.*\)-O3\(.*\)/CFLAGS\1=\2\3/' \
|
||||
-e 's/CFLAGS\(.*\)=\(.*\)-march=i686\(.*\)/CFLAGS\1=\2\3/' \
|
||||
-e 's/CFLAGS\(.*\)=\(.*\)-fomit-frame-pointer\(.*\)/CFLAGS\1=\2\3/' \
|
||||
-e 's/CFLAGS\(.*\)=\(.*\)-g3*\s\(.*\)/CFLAGS\1=\2 \3/' \
|
||||
-e 's/CFLAGS\(.*\)=\(.*\)-O2\(.*\)/CFLAGS\1=\2\3/' \
|
||||
-i {} + || die "failed to re-set custom-cflags"
|
||||
else
|
||||
unset CFLAGS
|
||||
unset LDFLAGS
|
||||
unset ASFLAGS
|
||||
unset CPPFLAGS
|
||||
fi
|
||||
|
||||
if ! use pygrub; then
|
||||
sed -e '/^SUBDIRS-y += pygrub/d' -i tools/Makefile || die
|
||||
fi
|
||||
|
||||
if ! use python; then
|
||||
sed -e '/^SUBDIRS-y += python$/d' -i tools/Makefile || die
|
||||
fi
|
||||
|
||||
if ! use hvm; then
|
||||
sed -e '/SUBDIRS-$(CONFIG_X86) += firmware/d' -i tools/Makefile || die
|
||||
# Bug 351648
|
||||
elif ! use x86 && ! has x86 $(get_all_abis); then
|
||||
mkdir -p "${WORKDIR}"/extra-headers/gnu || die
|
||||
touch "${WORKDIR}"/extra-headers/gnu/stubs-32.h || die
|
||||
export CPATH="${WORKDIR}"/extra-headers
|
||||
fi
|
||||
|
||||
if use qemu; then
|
||||
if use sdl; then
|
||||
sed -i -e "s:\$\$source/configure:\0 --enable-sdl:" \
|
||||
tools/Makefile || die
|
||||
else
|
||||
sed -i -e "s:\${QEMU_ROOT\:\-\.}/configure:\0 --disable-sdl:" \
|
||||
tools/qemu-xen-traditional/xen-setup || die
|
||||
sed -i -e "s:\$\$source/configure:\0 --disable-sdl:" \
|
||||
tools/Makefile || die
|
||||
fi
|
||||
else
|
||||
# Don't bother with qemu, only needed for fully virtualised guests
|
||||
sed -e "s:install-tools\: tools/qemu-xen-traditional-dir:install-tools\: :g" -i Makefile || die
|
||||
fi
|
||||
|
||||
# Reset bash completion dir; Bug 472438
|
||||
sed -e "s:^BASH_COMPLETION_DIR ?= \$(CONFIG_DIR)/bash_completion.d:BASH_COMPLETION_DIR ?= $(get_bashcompdir):" \
|
||||
-i Config.mk || die
|
||||
sed -i -e "/bash-completion/s/xl\.sh/xl/g" tools/libxl/Makefile || die
|
||||
|
||||
# xencommons, Bug #492332, sed lighter weight than patching
|
||||
sed -e 's:\$QEMU_XEN -xen-domid:test -e "\$QEMU_XEN" \&\& &:' \
|
||||
-i tools/hotplug/Linux/init.d/xencommons.in || die
|
||||
|
||||
# fix bashishm
|
||||
sed -e '/Usage/s/\$//g' \
|
||||
-i tools/hotplug/Linux/init.d/xendriverdomain.in || die
|
||||
|
||||
# respect multilib, usr/lib/libcacard.so.0.0.0
|
||||
sed -e "/^libdir=/s/\/lib/\/$(get_libdir)/" \
|
||||
-i tools/qemu-xen/configure || die
|
||||
|
||||
#bug 518136, don't build 32bit exactuable for nomultilib profile
|
||||
if [[ "${ARCH}" == 'amd64' ]] && ! has_multilib_profile; then
|
||||
sed -i -e "/x86_emulator/d" tools/tests/Makefile || die
|
||||
fi
|
||||
|
||||
# uncomment lines in xl.conf
|
||||
sed -e 's:^#autoballoon=:autoballoon=:' \
|
||||
-e 's:^#lockfile=:lockfile=:' \
|
||||
-e 's:^#vif.default.script=:vif.default.script=:' \
|
||||
-i tools/examples/xl.conf || die
|
||||
|
||||
default
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
local myconf="--prefix=${PREFIX}/usr \
|
||||
--libdir=${PREFIX}/usr/$(get_libdir) \
|
||||
--libexecdir=${PREFIX}/usr/libexec \
|
||||
--localstatedir=${EPREFIX}/var \
|
||||
--disable-werror \
|
||||
--disable-xen \
|
||||
--enable-tools \
|
||||
--enable-docs \
|
||||
$(use_enable pam) \
|
||||
$(use_enable api xenapi) \
|
||||
$(use_enable ovmf) \
|
||||
$(use_enable ocaml ocamltools) \
|
||||
--with-xenstored=$(usex ocaml 'oxenstored' 'xenstored') \
|
||||
"
|
||||
|
||||
use system-seabios && myconf+=" --with-system-seabios=/usr/share/seabios/bios.bin"
|
||||
use system-qemu && myconf+=" --with-system-qemu=/usr/bin/qemu-system-x86_64"
|
||||
use amd64 && myconf+=" $(use_enable qemu-traditional)"
|
||||
econf ${myconf}
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
local myopt
|
||||
use debug && myopt="${myopt} debug=y"
|
||||
|
||||
if test-flag-CC -fno-strict-overflow; then
|
||||
append-flags -fno-strict-overflow
|
||||
fi
|
||||
|
||||
emake CC="$(tc-getCC)" LD="$(tc-getLD)" AR="$(tc-getAR)" RANLIB="$(tc-getRANLIB)" build-tools ${myopt}
|
||||
|
||||
if use doc; then
|
||||
emake -C docs build
|
||||
else
|
||||
emake -C docs man-pages
|
||||
fi
|
||||
}
|
||||
|
||||
src_install() {
|
||||
# Override auto-detection in the build system, bug #382573
|
||||
export INITD_DIR=/tmp/init.d
|
||||
export CONFIG_LEAF_DIR=../tmp/default
|
||||
|
||||
# Let the build system compile installed Python modules.
|
||||
local PYTHONDONTWRITEBYTECODE
|
||||
export PYTHONDONTWRITEBYTECODE
|
||||
|
||||
emake DESTDIR="${ED}" DOCDIR="/usr/share/doc/${PF}" \
|
||||
XEN_PYTHON_NATIVE_INSTALL=y install-tools
|
||||
|
||||
# Created at runtime
|
||||
rm -rv "${ED%/}/var/run" || die
|
||||
|
||||
# Fix the remaining Python shebangs.
|
||||
python_fix_shebang "${D}"
|
||||
|
||||
# Remove RedHat-specific stuff
|
||||
rm -rf "${D}"tmp || die
|
||||
|
||||
emake DESTDIR="${D}" DOCDIR="/usr/share/doc/${PF}" install-docs
|
||||
use doc && dodoc -r docs/{pdf,txt}
|
||||
dodoc ${DOCS[@]}
|
||||
|
||||
newconfd "${FILESDIR}"/xendomains.confd xendomains
|
||||
newconfd "${FILESDIR}"/xenstored.confd xenstored
|
||||
newconfd "${FILESDIR}"/xenconsoled.confd xenconsoled
|
||||
newinitd "${FILESDIR}"/xendomains.initd-r2 xendomains
|
||||
newinitd "${FILESDIR}"/xenstored.initd-r1 xenstored
|
||||
newinitd "${FILESDIR}"/xenconsoled.initd xenconsoled
|
||||
newinitd "${FILESDIR}"/xencommons.initd xencommons
|
||||
newconfd "${FILESDIR}"/xencommons.confd xencommons
|
||||
newinitd "${FILESDIR}"/xenqemudev.initd xenqemudev
|
||||
newconfd "${FILESDIR}"/xenqemudev.confd xenqemudev
|
||||
newinitd "${FILESDIR}"/xen-watchdog.initd xen-watchdog
|
||||
|
||||
if use screen; then
|
||||
cat "${FILESDIR}"/xendomains-screen.confd >> "${D}"/etc/conf.d/xendomains || die
|
||||
cp "${FILESDIR}"/xen-consoles.logrotate "${D}"/etc/xen/ || die
|
||||
keepdir /var/log/xen-consoles
|
||||
fi
|
||||
|
||||
# For -static-libs wrt Bug 384355
|
||||
if ! use static-libs; then
|
||||
rm -f "${D}"usr/$(get_libdir)/*.a "${D}"usr/$(get_libdir)/ocaml/*/*.a
|
||||
fi
|
||||
|
||||
# for xendomains
|
||||
keepdir /etc/xen/auto
|
||||
|
||||
# Remove files failing QA AFTER emake installs them, avoiding seeking absent files
|
||||
find "${D}" \( -name openbios-sparc32 -o -name openbios-sparc64 \
|
||||
-o -name openbios-ppc -o -name palcode-clipper \) -delete || die
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
elog "Official Xen Guide and the offical wiki page:"
|
||||
elog "https://wiki.gentoo.org/wiki/Xen"
|
||||
elog "https://wiki.xen.org/wiki/Main_Page"
|
||||
elog ""
|
||||
elog "Recommended to utilise the xencommons script to config sytem At boot"
|
||||
elog "Add by use of rc-update on completion of the install"
|
||||
|
||||
if ! use hvm; then
|
||||
echo
|
||||
elog "HVM (VT-x and AMD-V) support has been disabled. If you need hvm"
|
||||
elog "support enable the hvm use flag."
|
||||
elog "An x86 or amd64 system is required to build HVM support."
|
||||
fi
|
||||
|
||||
if use qemu; then
|
||||
elog "The qemu-bridge-helper is renamed to the xen-bridge-helper in the in source"
|
||||
elog "build of qemu. This allows for app-emulation/qemu to be emerged concurrently"
|
||||
elog "with the qemu capable xen. It is up to the user to distinguish between and utilise"
|
||||
elog "the qemu-bridge-helper and the xen-bridge-helper. File bugs of any issues that arise"
|
||||
fi
|
||||
}
|
@ -1,18 +1,11 @@
|
||||
AUX xen-4.6-efi.patch 1954 BLAKE2B c027aff764e83eef957241827980559ccfeec5525bf0ce6b6b2d38db565fd0f24b21609c1d497934ef823d42116eaf96799b45314f11f57a9238ab21f1255a00 SHA512 361af33159cf49626e92d2815fd4422ea5b1d696a32ce2695ce75205fbbfb89d96b64a8af7332fffdc4a4390000bf52d3730403dfc2334af0da0bea59d58b689
|
||||
DIST xen-4.10.0-upstream-patches-0.tar.xz 70884 BLAKE2B 9a27e7989486ba3ba59548de356384527cc5b78e63b6ed042506e6534e488272369f021cd2daa516820313c3fe18625a5864794ae0806e7018b8ad28b0a294b1 SHA512 e64bf1d30d24e922c60c3b518a4de7874b43cc695134b4cdd65f6d95ae9ae579c521fab13ca82409fde55e43815d072c3194997e2bda106204cbf329e93a0a00
|
||||
DIST xen-4.10.0.tar.gz 24618123 BLAKE2B 009faa980f9734525c137d525e626bfa3443c285aeb6b4af91bb2c32a2e98376ded0b1114b541d11e2d4353f4f588d58e8add5b1e0d7de2fe3399d4687c5bfae SHA512 5a37935c382f9cfe3641a35c3be0ba11689bca10c7d3c2401963513e3a834ee8d0c8a0ddcf3716dbf0a795aea1bab78caf19acf1272e5e054bf012cfa06a4690
|
||||
DIST xen-4.10.1-upstream-patches-1.tar.xz 85048 BLAKE2B d00f01980e1c889b2f6899970999b93a7ddbaa03f88219d576bfbe4ccfe0ef3f75afad1538065045833430baa16b64d8dd7eb42af6ad7c3ef948601b941c51bc SHA512 ede74a53faf82712d6ee0cf2a995bb78b7079481e47e829243632fac40069194671e6b9b765e535aa533f618cdcd7715f540e81acd947a42f7b8cbb693a3df82
|
||||
DIST xen-4.10.1-upstream-patches-2.tar.xz 117588 BLAKE2B ddcd58964117652b50f3524d89089e2e9b14a8399fb5bd2db5d12827035ab94cedbfd5d65134d8953e4062a50e0e8a9b320e9c34008db8fd364456f47fd9cd26 SHA512 49ee8497af3753f3d611bf12c65fb7a79abb018862f1af096e9dde3ddfe8780bb95fc3da338c8d5f16a5d6d233d606d4cf8025a3d0e2897bf2668a1d5b27b198
|
||||
DIST xen-4.10.1.tar.gz 24674240 BLAKE2B f9a7e0c637db865ab32ad6b6185ab96022903aff65a18e194286a3fc372d4a45f6682cd636b7ac5b4fa0125e54ed51f8876a411d498cf75791718fd088c4a6d2 SHA512 236c02bee69e33644703ed26d323d4c491a91fc05bd0ee0990a7368579f7c82f5bb4510845bf80348fd923024d7d60d521f593dfd0365d971dc592f8ef10fbea
|
||||
DIST xen-4.11.0-upstream-patches-0.tar.xz 21720 BLAKE2B 92c2ef90ca6af5032e9181d8edbe2b91a4117cc402f5abdff208aa76ee76b56ce75f576c56220d2ebf6d1a21957c10f7c45a2c88d2c77aa8b17fa9a0a99e5b57 SHA512 6ea0ee376251b20b7fa9b6334bca462f115d8a9929e31ae269ae9591b433b46e4e9076a2d2e39ec5f868d5d74739ad7b0ba0d9244e599da5255ccca0babd669e
|
||||
DIST xen-4.10.2-upstream-patches-0.tar.xz 3884 BLAKE2B 4584fbe849e80c638db07f49a19cc26fe79606b76eef96258a02b198e4a198053785e76dd82a666e1b719641f5ca675aa7d35d97a8237ccc2d22485b790ebec9 SHA512 83bb37e241efdcb5641cb5423d09c1f04d3eb5cd89c72b74934d7712705735f9cfa00b3a2291947693409f966554660abd33f07b08cc94a4a0df8ce8b359996a
|
||||
DIST xen-4.10.2.tar.gz 24697204 BLAKE2B b331d3ad8d7842446f7d2da5dd31560f636aa1408dd3cc8798dff35b868ef5a609d17e97ef4355e1e5aa825a5abc74103796f9a8015037f0a564ffcebd825722 SHA512 2e301b4d6eb106fcb52203bc1208c8fd1fc7bb5d795166c0f86e4085227050301f7daa6f21db440c47bc2ca2c7f87d9b96753cfdf3fa724e0416b5679b84c163
|
||||
DIST xen-4.11.0-upstream-patches-1.tar.xz 56664 BLAKE2B 27579f4e628bb0d3fdd59f7e133e9134d4ca175842dfdae3a3f765b133254239ae3bca94d75dd655735b5bcbd67f9b8d444dd227028642e6e459e57ed8a20341 SHA512 e90b8e7fa9433e93b1620a776833a6d3578babebe5d73dcaae11186f473945a2270046932ab314a9c6049d3b460a655456f487a5b59730fe88a4f08d482c47a1
|
||||
DIST xen-4.11.0.tar.gz 25131533 BLAKE2B 892639b8bcd9b9956104e4d5137ffd88e17f92d965fa967b4af8d74a4fddcc21c6971c53026e0fb5ce833ab2c25c68f827abcac0b7b1dcebc21dca645c465573 SHA512 33d431c194f10d5ee767558404a1f80a66b3df019012b0bbd587fcbc9524e1bba7ea04269020ce891fe9d211d2f81c63bf78abedcdbe1595aee26251c803a50a
|
||||
DIST xen-4.9.2-upstream-patches-1.tar.xz 13812 BLAKE2B fe8bf636dea9fbd21c9fc432817dc8e21ffb78bf70279b86babb6963a0dbebc17493eb6c016ee1093ef36e66693df25e8aeb35a568260f2e62a97a787b3c70bb SHA512 d75ea99531a10279736f89057857c257955800df6fe42bd742babfd5a9e527a2cb0d4dc5505b41df5b9db82246a8414f14b7084997ee798ffab657a3991b17ae
|
||||
DIST xen-4.9.2.tar.gz 23392753 BLAKE2B 5f96f0e5062eff8ac2971eef85ea2bae0e94e7542151237937a1cf7e74690bb0ce1c952e830d2fc13b3277f70b9ed1de511afe4f780ad7b3be0c58742ece39b2 SHA512 e06aec25439abcc548c174ba8e271c23031ea704bcc2480905140aa68490064fbb1c58d9c4174f6617b4f7bbcddfda284317df6f480a6e5b5b5a2c71fbe0ac93
|
||||
EBUILD xen-4.10.0.ebuild 4819 BLAKE2B 3485abb76d742a02a1f5bab5a751c151fa2ac1e82f07fc98a288be9389f6ba4a5a1e56fc9a88ed41bc6e690b9e74ef301732dd57c3d2f25a8bb3e1fb4cdf4021 SHA512 932483e5bef935091d911cf162b40ff69992217847aa5dce3dfe82deda6e924624cf3d7f808b74fd0ea487a7cf25ee50c095e290d76aaaa259c9d57949534911
|
||||
EBUILD xen-4.10.1-r1.ebuild 4819 BLAKE2B 72bfc9525c0baaeebd6e12351bc38c0a45290cd50f2b4cf19f19bb250306b9a305ee14ff7bd7e3e3697fac9187c596647290d5e8cd2eff99c799d2cfa9a894d2 SHA512 56b92a8a629bb290f0cdf1e3c72438ce7cdb8f5bf77ace6e5113ff503d1ab745ad926b288cc69e7d3a4636cdb05004dd8a7505e277c9144414fb608d1ec4c8bb
|
||||
EBUILD xen-4.10.1-r2.ebuild 4823 BLAKE2B f3d9b58a962ff238a06aab52bc4a2b31f7fddc96ead762e76ea732cd7582598d752c96e6f3f8ed1f79fc30183bfac2113b45af43e8cd3c13ad17518f239240d5 SHA512 99a36b4c11f517eeb3d2c7ac047a031f4f1c3885b6a01390522e05697c9470c6da4014cf34498800b381aef88746dedea5c2300e7c43146f48d756777a81d8bf
|
||||
EBUILD xen-4.11.0-r1.ebuild 4819 BLAKE2B 3485abb76d742a02a1f5bab5a751c151fa2ac1e82f07fc98a288be9389f6ba4a5a1e56fc9a88ed41bc6e690b9e74ef301732dd57c3d2f25a8bb3e1fb4cdf4021 SHA512 932483e5bef935091d911cf162b40ff69992217847aa5dce3dfe82deda6e924624cf3d7f808b74fd0ea487a7cf25ee50c095e290d76aaaa259c9d57949534911
|
||||
EBUILD xen-4.10.2.ebuild 4796 BLAKE2B 63735fd721ef10e82c9403590e4728474117cf9c16d2063df2ad8edc9768ef7604e95971b75eb62fd9c8d4df85df7ad7bea4797174bc85f6d716904b8381a539 SHA512 361c7669572237bbd861b1adfe62a439c8fc1fc838e9023c0bcd2c8b864c0d91db3ad0063b2282d6bb8ce9a42f50cae833adf2f3bf7a1bb23e6b502e085a7308
|
||||
EBUILD xen-4.11.0-r2.ebuild 4819 BLAKE2B f2f02a3fa62bf031955b7d09e98b0028a69a98504af2fbfe6943fc74ca552245ffe014c8b746ce7ab9eb20bdc5d31aaf320f23ad682b44c9dc2e103f5dcd2e0f SHA512 e167c117f8f027a9ff832fbe27f33b0d40ea35a9cf3c958c9fb5ffe82b0c91a3ee086334c9da7c2d3bdaff3828e9b371945b59e0b6e763223f4f605802ee5dfa
|
||||
EBUILD xen-4.9.2.ebuild 4719 BLAKE2B bd5c63e4ed7046568f8276c0a5b65c1cee97e07e0410eec66324b7625619ed6320282181c9b10519f683c54cf22fd0af1e7bce14d5558966535b2393e6136af6 SHA512 3758dd6eb2323e30e9e77efbc46917bb16fed2f8380967903582d0c834d61fde1caa7902d96e5846af6ea4f0b914d64aaac2a58ad75c695e8a7c389e33f4971d
|
||||
MISC metadata.xml 417 BLAKE2B 5713c8e5f27d56714938b7d2bed096c3b3f9fbb0ad9bce2bb3240e4a8556134cfc88efe0e2c7feb2e9cc722c11800e8433afa0d03746b05998909dd976230225 SHA512 2708f84b8a1508eebc96539993ae1bde4b921d4401229c221e2bee9a0cd643fdf1f854fcbba6033ed68667d0efb00c25222f4c68535a96f2200084d8d8759946
|
||||
|
@ -1,172 +0,0 @@
|
||||
# Copyright 1999-2018 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=6
|
||||
|
||||
PYTHON_COMPAT=( python2_7 )
|
||||
|
||||
inherit eutils flag-o-matic mount-boot multilib python-any-r1 toolchain-funcs
|
||||
|
||||
MY_PV=${PV/_/-}
|
||||
MY_P=${PN}-${MY_PV}
|
||||
|
||||
if [[ $PV == *9999 ]]; then
|
||||
inherit git-r3
|
||||
KEYWORDS=""
|
||||
EGIT_REPO_URI="git://xenbits.xen.org/xen.git"
|
||||
SRC_URI=""
|
||||
else
|
||||
KEYWORDS="~amd64 ~arm -x86"
|
||||
UPSTREAM_VER=0
|
||||
SECURITY_VER=
|
||||
GENTOO_VER=
|
||||
|
||||
[[ -n ${UPSTREAM_VER} ]] && \
|
||||
UPSTREAM_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${P}-upstream-patches-${UPSTREAM_VER}.tar.xz
|
||||
https://github.com/hydrapolic/gentoo-dist/raw/master/xen/${P}-upstream-patches-${UPSTREAM_VER}.tar.xz"
|
||||
[[ -n ${SECURITY_VER} ]] && \
|
||||
SECURITY_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${PN}-security-patches-${SECURITY_VER}.tar.xz"
|
||||
[[ -n ${GENTOO_VER} ]] && \
|
||||
GENTOO_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${PN}-gentoo-patches-${GENTOO_VER}.tar.xz"
|
||||
SRC_URI="https://downloads.xenproject.org/release/xen/${MY_PV}/${MY_P}.tar.gz
|
||||
${UPSTREAM_PATCHSET_URI}
|
||||
${SECURITY_PATCHSET_URI}
|
||||
${GENTOO_PATCHSET_URI}"
|
||||
fi
|
||||
|
||||
DESCRIPTION="The Xen virtual machine monitor"
|
||||
HOMEPAGE="https://www.xenproject.org"
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
IUSE="custom-cflags debug efi flask"
|
||||
|
||||
DEPEND="${PYTHON_DEPS}
|
||||
efi? ( >=sys-devel/binutils-2.22[multitarget] )
|
||||
!efi? ( >=sys-devel/binutils-2.22 )"
|
||||
RDEPEND=""
|
||||
PDEPEND="~app-emulation/xen-tools-${PV}"
|
||||
|
||||
# no tests are available for the hypervisor
|
||||
# prevent the silliness of /usr/lib/debug/usr/lib/debug files
|
||||
# prevent stripping of the debug info from the /usr/lib/debug/xen-syms
|
||||
RESTRICT="test splitdebug strip"
|
||||
|
||||
# Approved by QA team in bug #144032
|
||||
QA_WX_LOAD="boot/xen-syms-${PV}"
|
||||
|
||||
REQUIRED_USE="arm? ( debug )"
|
||||
|
||||
S="${WORKDIR}/${MY_P}"
|
||||
|
||||
pkg_setup() {
|
||||
python-any-r1_pkg_setup
|
||||
if [[ -z ${XEN_TARGET_ARCH} ]]; then
|
||||
if use amd64; then
|
||||
export XEN_TARGET_ARCH="x86_64"
|
||||
elif use arm; then
|
||||
export XEN_TARGET_ARCH="arm32"
|
||||
elif use arm64; then
|
||||
export XEN_TARGET_ARCH="arm64"
|
||||
else
|
||||
die "Unsupported architecture!"
|
||||
fi
|
||||
fi
|
||||
|
||||
if use flask ; then
|
||||
export "XSM_ENABLE=y"
|
||||
export "FLASK_ENABLE=y"
|
||||
fi
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
# Upstream's patchset
|
||||
[[ -n ${UPSTREAM_VER} ]] && eapply "${WORKDIR}"/patches-upstream
|
||||
|
||||
# Security patchset
|
||||
if [[ -n ${SECURITY_VER} ]]; then
|
||||
einfo "Try to apply Xen Security patch set"
|
||||
# apply main xen patches
|
||||
# Two parallel systems, both work side by side
|
||||
# Over time they may concdense into one. This will suffice for now
|
||||
source "${WORKDIR}"/patches-security/${PV}.conf
|
||||
|
||||
local i
|
||||
for i in ${XEN_SECURITY_MAIN}; do
|
||||
eapply "${WORKDIR}"/patches-security/xen/$i
|
||||
done
|
||||
fi
|
||||
|
||||
# Gentoo's patchset
|
||||
[[ -n ${GENTOO_VER} ]] && eapply "${WORKDIR}"/patches-gentoo
|
||||
|
||||
eapply "${FILESDIR}"/${PN}-4.6-efi.patch
|
||||
|
||||
# Drop .config
|
||||
sed -e '/-include $(XEN_ROOT)\/.config/d' -i Config.mk || die "Couldn't drop"
|
||||
|
||||
if use efi; then
|
||||
export EFI_VENDOR="gentoo"
|
||||
export EFI_MOUNTPOINT="boot"
|
||||
fi
|
||||
|
||||
# if the user *really* wants to use their own custom-cflags, let them
|
||||
if use custom-cflags; then
|
||||
einfo "User wants their own CFLAGS - removing defaults"
|
||||
# try and remove all the default custom-cflags
|
||||
find "${S}" -name Makefile -o -name Rules.mk -o -name Config.mk -exec sed \
|
||||
-e 's/CFLAGS\(.*\)=\(.*\)-O3\(.*\)/CFLAGS\1=\2\3/' \
|
||||
-e 's/CFLAGS\(.*\)=\(.*\)-march=i686\(.*\)/CFLAGS\1=\2\3/' \
|
||||
-e 's/CFLAGS\(.*\)=\(.*\)-fomit-frame-pointer\(.*\)/CFLAGS\1=\2\3/' \
|
||||
-e 's/CFLAGS\(.*\)=\(.*\)-g3*\s\(.*\)/CFLAGS\1=\2 \3/' \
|
||||
-e 's/CFLAGS\(.*\)=\(.*\)-O2\(.*\)/CFLAGS\1=\2\3/' \
|
||||
-i {} \; || die "failed to re-set custom-cflags"
|
||||
fi
|
||||
|
||||
default
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
use arm && myopt="${myopt} CONFIG_EARLY_PRINTK=sun7i"
|
||||
|
||||
use debug && myopt="${myopt} debug=y"
|
||||
|
||||
if use custom-cflags; then
|
||||
filter-flags -fPIE -fstack-protector
|
||||
replace-flags -O3 -O2
|
||||
else
|
||||
unset CFLAGS
|
||||
unset LDFLAGS
|
||||
unset ASFLAGS
|
||||
fi
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
# Send raw LDFLAGS so that --as-needed works
|
||||
emake V=1 CC="$(tc-getCC)" LDFLAGS="$(raw-ldflags)" LD="$(tc-getLD)" -C xen ${myopt}
|
||||
}
|
||||
|
||||
src_install() {
|
||||
local myopt
|
||||
use debug && myopt="${myopt} debug=y"
|
||||
|
||||
# The 'make install' doesn't 'mkdir -p' the subdirs
|
||||
if use efi; then
|
||||
mkdir -p "${D}"${EFI_MOUNTPOINT}/efi/${EFI_VENDOR} || die
|
||||
fi
|
||||
|
||||
emake LDFLAGS="$(raw-ldflags)" DESTDIR="${D}" -C xen ${myopt} install
|
||||
|
||||
# make install likes to throw in some extra EFI bits if it built
|
||||
use efi || rm -rf "${D}/usr/$(get_libdir)/efi"
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
elog "Official Xen Guide:"
|
||||
elog " https://wiki.gentoo.org/wiki/Xen"
|
||||
|
||||
use efi && einfo "The efi executable is installed in boot/efi/gentoo"
|
||||
|
||||
elog "You can optionally block the installation of /boot/xen-syms by an entry"
|
||||
elog "in folder /etc/portage/env using the portage's feature INSTALL_MASK"
|
||||
elog "e.g. echo ${msg} > /etc/portage/env/xen.conf"
|
||||
}
|
@ -1,172 +0,0 @@
|
||||
# Copyright 1999-2018 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=6
|
||||
|
||||
PYTHON_COMPAT=( python2_7 )
|
||||
|
||||
inherit eutils flag-o-matic mount-boot multilib python-any-r1 toolchain-funcs
|
||||
|
||||
MY_PV=${PV/_/-}
|
||||
MY_P=${PN}-${MY_PV}
|
||||
|
||||
if [[ $PV == *9999 ]]; then
|
||||
inherit git-r3
|
||||
KEYWORDS=""
|
||||
EGIT_REPO_URI="git://xenbits.xen.org/xen.git"
|
||||
SRC_URI=""
|
||||
else
|
||||
KEYWORDS="~amd64 ~arm -x86"
|
||||
UPSTREAM_VER=1
|
||||
SECURITY_VER=
|
||||
GENTOO_VER=
|
||||
|
||||
[[ -n ${UPSTREAM_VER} ]] && \
|
||||
UPSTREAM_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${P}-upstream-patches-${UPSTREAM_VER}.tar.xz
|
||||
https://github.com/hydrapolic/gentoo-dist/raw/master/xen/${P}-upstream-patches-${UPSTREAM_VER}.tar.xz"
|
||||
[[ -n ${SECURITY_VER} ]] && \
|
||||
SECURITY_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${PN}-security-patches-${SECURITY_VER}.tar.xz"
|
||||
[[ -n ${GENTOO_VER} ]] && \
|
||||
GENTOO_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${PN}-gentoo-patches-${GENTOO_VER}.tar.xz"
|
||||
SRC_URI="https://downloads.xenproject.org/release/xen/${MY_PV}/${MY_P}.tar.gz
|
||||
${UPSTREAM_PATCHSET_URI}
|
||||
${SECURITY_PATCHSET_URI}
|
||||
${GENTOO_PATCHSET_URI}"
|
||||
fi
|
||||
|
||||
DESCRIPTION="The Xen virtual machine monitor"
|
||||
HOMEPAGE="https://www.xenproject.org"
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
IUSE="custom-cflags debug efi flask"
|
||||
|
||||
DEPEND="${PYTHON_DEPS}
|
||||
efi? ( >=sys-devel/binutils-2.22[multitarget] )
|
||||
!efi? ( >=sys-devel/binutils-2.22 )"
|
||||
RDEPEND=""
|
||||
PDEPEND="~app-emulation/xen-tools-${PV}"
|
||||
|
||||
# no tests are available for the hypervisor
|
||||
# prevent the silliness of /usr/lib/debug/usr/lib/debug files
|
||||
# prevent stripping of the debug info from the /usr/lib/debug/xen-syms
|
||||
RESTRICT="test splitdebug strip"
|
||||
|
||||
# Approved by QA team in bug #144032
|
||||
QA_WX_LOAD="boot/xen-syms-${PV}"
|
||||
|
||||
REQUIRED_USE="arm? ( debug )"
|
||||
|
||||
S="${WORKDIR}/${MY_P}"
|
||||
|
||||
pkg_setup() {
|
||||
python-any-r1_pkg_setup
|
||||
if [[ -z ${XEN_TARGET_ARCH} ]]; then
|
||||
if use amd64; then
|
||||
export XEN_TARGET_ARCH="x86_64"
|
||||
elif use arm; then
|
||||
export XEN_TARGET_ARCH="arm32"
|
||||
elif use arm64; then
|
||||
export XEN_TARGET_ARCH="arm64"
|
||||
else
|
||||
die "Unsupported architecture!"
|
||||
fi
|
||||
fi
|
||||
|
||||
if use flask ; then
|
||||
export "XSM_ENABLE=y"
|
||||
export "FLASK_ENABLE=y"
|
||||
fi
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
# Upstream's patchset
|
||||
[[ -n ${UPSTREAM_VER} ]] && eapply "${WORKDIR}"/patches-upstream
|
||||
|
||||
# Security patchset
|
||||
if [[ -n ${SECURITY_VER} ]]; then
|
||||
einfo "Try to apply Xen Security patch set"
|
||||
# apply main xen patches
|
||||
# Two parallel systems, both work side by side
|
||||
# Over time they may concdense into one. This will suffice for now
|
||||
source "${WORKDIR}"/patches-security/${PV}.conf
|
||||
|
||||
local i
|
||||
for i in ${XEN_SECURITY_MAIN}; do
|
||||
eapply "${WORKDIR}"/patches-security/xen/$i
|
||||
done
|
||||
fi
|
||||
|
||||
# Gentoo's patchset
|
||||
[[ -n ${GENTOO_VER} ]] && eapply "${WORKDIR}"/patches-gentoo
|
||||
|
||||
eapply "${FILESDIR}"/${PN}-4.6-efi.patch
|
||||
|
||||
# Drop .config
|
||||
sed -e '/-include $(XEN_ROOT)\/.config/d' -i Config.mk || die "Couldn't drop"
|
||||
|
||||
if use efi; then
|
||||
export EFI_VENDOR="gentoo"
|
||||
export EFI_MOUNTPOINT="boot"
|
||||
fi
|
||||
|
||||
# if the user *really* wants to use their own custom-cflags, let them
|
||||
if use custom-cflags; then
|
||||
einfo "User wants their own CFLAGS - removing defaults"
|
||||
# try and remove all the default custom-cflags
|
||||
find "${S}" -name Makefile -o -name Rules.mk -o -name Config.mk -exec sed \
|
||||
-e 's/CFLAGS\(.*\)=\(.*\)-O3\(.*\)/CFLAGS\1=\2\3/' \
|
||||
-e 's/CFLAGS\(.*\)=\(.*\)-march=i686\(.*\)/CFLAGS\1=\2\3/' \
|
||||
-e 's/CFLAGS\(.*\)=\(.*\)-fomit-frame-pointer\(.*\)/CFLAGS\1=\2\3/' \
|
||||
-e 's/CFLAGS\(.*\)=\(.*\)-g3*\s\(.*\)/CFLAGS\1=\2 \3/' \
|
||||
-e 's/CFLAGS\(.*\)=\(.*\)-O2\(.*\)/CFLAGS\1=\2\3/' \
|
||||
-i {} \; || die "failed to re-set custom-cflags"
|
||||
fi
|
||||
|
||||
default
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
use arm && myopt="${myopt} CONFIG_EARLY_PRINTK=sun7i"
|
||||
|
||||
use debug && myopt="${myopt} debug=y"
|
||||
|
||||
if use custom-cflags; then
|
||||
filter-flags -fPIE -fstack-protector
|
||||
replace-flags -O3 -O2
|
||||
else
|
||||
unset CFLAGS
|
||||
unset LDFLAGS
|
||||
unset ASFLAGS
|
||||
fi
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
# Send raw LDFLAGS so that --as-needed works
|
||||
emake V=1 CC="$(tc-getCC)" LDFLAGS="$(raw-ldflags)" LD="$(tc-getLD)" -C xen ${myopt}
|
||||
}
|
||||
|
||||
src_install() {
|
||||
local myopt
|
||||
use debug && myopt="${myopt} debug=y"
|
||||
|
||||
# The 'make install' doesn't 'mkdir -p' the subdirs
|
||||
if use efi; then
|
||||
mkdir -p "${D}"${EFI_MOUNTPOINT}/efi/${EFI_VENDOR} || die
|
||||
fi
|
||||
|
||||
emake LDFLAGS="$(raw-ldflags)" DESTDIR="${D}" -C xen ${myopt} install
|
||||
|
||||
# make install likes to throw in some extra EFI bits if it built
|
||||
use efi || rm -rf "${D}/usr/$(get_libdir)/efi"
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
elog "Official Xen Guide:"
|
||||
elog " https://wiki.gentoo.org/wiki/Xen"
|
||||
|
||||
use efi && einfo "The efi executable is installed in boot/efi/gentoo"
|
||||
|
||||
elog "You can optionally block the installation of /boot/xen-syms by an entry"
|
||||
elog "in folder /etc/portage/env using the portage's feature INSTALL_MASK"
|
||||
elog "e.g. echo ${msg} > /etc/portage/env/xen.conf"
|
||||
}
|
@ -1,18 +1,17 @@
|
||||
# Copyright 1999-2018 Gentoo Foundation
|
||||
# Copyright 1999-2018 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=6
|
||||
EAPI=7
|
||||
|
||||
PYTHON_COMPAT=( python2_7 )
|
||||
|
||||
inherit eutils flag-o-matic mount-boot multilib python-any-r1 toolchain-funcs
|
||||
inherit flag-o-matic mount-boot multilib python-any-r1 toolchain-funcs
|
||||
|
||||
MY_PV=${PV/_/-}
|
||||
MY_P=${PN}-${MY_PV}
|
||||
|
||||
if [[ $PV == *9999 ]]; then
|
||||
inherit git-r3
|
||||
KEYWORDS=""
|
||||
EGIT_REPO_URI="git://xenbits.xen.org/xen.git"
|
||||
SRC_URI=""
|
||||
else
|
@ -1,171 +0,0 @@
|
||||
# Copyright 1999-2018 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=6
|
||||
|
||||
PYTHON_COMPAT=( python2_7 )
|
||||
|
||||
inherit eutils flag-o-matic mount-boot multilib python-any-r1 toolchain-funcs
|
||||
|
||||
MY_PV=${PV/_/-}
|
||||
MY_P=${PN}-${MY_PV}
|
||||
|
||||
if [[ $PV == *9999 ]]; then
|
||||
inherit git-r3
|
||||
KEYWORDS="amd64"
|
||||
EGIT_REPO_URI="git://xenbits.xen.org/xen.git"
|
||||
SRC_URI=""
|
||||
else
|
||||
KEYWORDS="amd64 ~arm -x86"
|
||||
UPSTREAM_VER=1
|
||||
SECURITY_VER=
|
||||
GENTOO_VER=
|
||||
|
||||
[[ -n ${UPSTREAM_VER} ]] && \
|
||||
UPSTREAM_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${P}-upstream-patches-${UPSTREAM_VER}.tar.xz"
|
||||
[[ -n ${SECURITY_VER} ]] && \
|
||||
SECURITY_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${PN}-security-patches-${SECURITY_VER}.tar.xz"
|
||||
[[ -n ${GENTOO_VER} ]] && \
|
||||
GENTOO_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${PN}-gentoo-patches-${GENTOO_VER}.tar.xz"
|
||||
SRC_URI="https://downloads.xenproject.org/release/xen/${MY_PV}/${MY_P}.tar.gz
|
||||
${UPSTREAM_PATCHSET_URI}
|
||||
${SECURITY_PATCHSET_URI}
|
||||
${GENTOO_PATCHSET_URI}"
|
||||
fi
|
||||
|
||||
DESCRIPTION="The Xen virtual machine monitor"
|
||||
HOMEPAGE="https://www.xenproject.org"
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
IUSE="custom-cflags debug efi flask"
|
||||
|
||||
DEPEND="${PYTHON_DEPS}
|
||||
efi? ( >=sys-devel/binutils-2.22[multitarget] )
|
||||
!efi? ( >=sys-devel/binutils-2.22 )"
|
||||
RDEPEND=""
|
||||
PDEPEND="~app-emulation/xen-tools-${PV}"
|
||||
|
||||
# no tests are available for the hypervisor
|
||||
# prevent the silliness of /usr/lib/debug/usr/lib/debug files
|
||||
# prevent stripping of the debug info from the /usr/lib/debug/xen-syms
|
||||
RESTRICT="test splitdebug strip"
|
||||
|
||||
# Approved by QA team in bug #144032
|
||||
QA_WX_LOAD="boot/xen-syms-${PV}"
|
||||
|
||||
REQUIRED_USE="arm? ( debug )"
|
||||
|
||||
S="${WORKDIR}/${MY_P}"
|
||||
|
||||
pkg_setup() {
|
||||
python-any-r1_pkg_setup
|
||||
if [[ -z ${XEN_TARGET_ARCH} ]]; then
|
||||
if use amd64; then
|
||||
export XEN_TARGET_ARCH="x86_64"
|
||||
elif use arm; then
|
||||
export XEN_TARGET_ARCH="arm32"
|
||||
elif use arm64; then
|
||||
export XEN_TARGET_ARCH="arm64"
|
||||
else
|
||||
die "Unsupported architecture!"
|
||||
fi
|
||||
fi
|
||||
|
||||
if use flask ; then
|
||||
export "XSM_ENABLE=y"
|
||||
export "FLASK_ENABLE=y"
|
||||
fi
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
# Upstream's patchset
|
||||
[[ -n ${UPSTREAM_VER} ]] && eapply "${WORKDIR}"/patches-upstream
|
||||
|
||||
# Security patchset
|
||||
if [[ -n ${SECURITY_VER} ]]; then
|
||||
einfo "Try to apply Xen Security patch set"
|
||||
# apply main xen patches
|
||||
# Two parallel systems, both work side by side
|
||||
# Over time they may concdense into one. This will suffice for now
|
||||
source "${WORKDIR}"/patches-security/${PV}.conf
|
||||
|
||||
local i
|
||||
for i in ${XEN_SECURITY_MAIN}; do
|
||||
eapply "${WORKDIR}"/patches-security/xen/$i
|
||||
done
|
||||
fi
|
||||
|
||||
# Gentoo's patchset
|
||||
[[ -n ${GENTOO_VER} ]] && eapply "${WORKDIR}"/patches-gentoo
|
||||
|
||||
eapply "${FILESDIR}"/${PN}-4.6-efi.patch
|
||||
|
||||
# Drop .config
|
||||
sed -e '/-include $(XEN_ROOT)\/.config/d' -i Config.mk || die "Couldn't drop"
|
||||
|
||||
if use efi; then
|
||||
export EFI_VENDOR="gentoo"
|
||||
export EFI_MOUNTPOINT="boot"
|
||||
fi
|
||||
|
||||
# if the user *really* wants to use their own custom-cflags, let them
|
||||
if use custom-cflags; then
|
||||
einfo "User wants their own CFLAGS - removing defaults"
|
||||
# try and remove all the default custom-cflags
|
||||
find "${S}" -name Makefile -o -name Rules.mk -o -name Config.mk -exec sed \
|
||||
-e 's/CFLAGS\(.*\)=\(.*\)-O3\(.*\)/CFLAGS\1=\2\3/' \
|
||||
-e 's/CFLAGS\(.*\)=\(.*\)-march=i686\(.*\)/CFLAGS\1=\2\3/' \
|
||||
-e 's/CFLAGS\(.*\)=\(.*\)-fomit-frame-pointer\(.*\)/CFLAGS\1=\2\3/' \
|
||||
-e 's/CFLAGS\(.*\)=\(.*\)-g3*\s\(.*\)/CFLAGS\1=\2 \3/' \
|
||||
-e 's/CFLAGS\(.*\)=\(.*\)-O2\(.*\)/CFLAGS\1=\2\3/' \
|
||||
-i {} \; || die "failed to re-set custom-cflags"
|
||||
fi
|
||||
|
||||
default
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
use arm && myopt="${myopt} CONFIG_EARLY_PRINTK=sun7i"
|
||||
|
||||
use debug && myopt="${myopt} debug=y"
|
||||
|
||||
if use custom-cflags; then
|
||||
filter-flags -fPIE -fstack-protector
|
||||
replace-flags -O3 -O2
|
||||
else
|
||||
unset CFLAGS
|
||||
unset LDFLAGS
|
||||
unset ASFLAGS
|
||||
fi
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
# Send raw LDFLAGS so that --as-needed works
|
||||
emake V=1 CC="$(tc-getCC)" LDFLAGS="$(raw-ldflags)" LD="$(tc-getLD)" -C xen ${myopt}
|
||||
}
|
||||
|
||||
src_install() {
|
||||
local myopt
|
||||
use debug && myopt="${myopt} debug=y"
|
||||
|
||||
# The 'make install' doesn't 'mkdir -p' the subdirs
|
||||
if use efi; then
|
||||
mkdir -p "${D}"${EFI_MOUNTPOINT}/efi/${EFI_VENDOR} || die
|
||||
fi
|
||||
|
||||
emake LDFLAGS="$(raw-ldflags)" DESTDIR="${D}" -C xen ${myopt} install
|
||||
|
||||
# make install likes to throw in some extra EFI bits if it built
|
||||
use efi || rm -rf "${D}/usr/$(get_libdir)/efi"
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
elog "Official Xen Guide:"
|
||||
elog " https://wiki.gentoo.org/wiki/Xen"
|
||||
|
||||
use efi && einfo "The efi executable is installed in boot/efi/gentoo"
|
||||
|
||||
elog "You can optionally block the installation of /boot/xen-syms by an entry"
|
||||
elog "in folder /etc/portage/env using the portage's feature INSTALL_MASK"
|
||||
elog "e.g. echo ${msg} > /etc/portage/env/xen.conf"
|
||||
}
|
Binary file not shown.
Binary file not shown.
@ -1,3 +1,3 @@
|
||||
DIST cpipe-3.0.3.tar.gz 16392 BLAKE2B 6aadb1b186bbf9aa5d804ca719baaff662116084c1e24c9fac38526e8fd190421189dfb02787f430dd0997b3b1bcba41ba002630a324e508190a0b6bd6b0af91 SHA512 255e3833ddaf27af1768e650a47d0565224ddd22137636ae0fae491a4d03f523b74a76f26b261c71442a7509f42eee64b75fbcf7078641a64b66a2590bb803b3
|
||||
EBUILD cpipe-3.0.3.ebuild 649 BLAKE2B 681dbcee08f62a22faf8e5202815d776870923ff5d5e221f034e2ba3c20bdd5e784375ad31f361c5b76322e8809be240b94c39e7893de68dc7e1cf1b3983de2a SHA512 d5664f0b059e092f0e4ca41e8aaf630cbabab2a07c25616b550069355d6570c35737aca7c4211c37943be15a6b968348eed2c43c8b8e71ddcc7a8e481789bd0b
|
||||
EBUILD cpipe-3.0.3.ebuild 659 BLAKE2B c79449c6313e63e2ecf9cc00834750bcffe67811fdc1d13dd003ed3fa66f4dfb3b0c564b6eb7616754f60f7c0c9533ad90113b1d09df0a3099d9e8527e8f1ee8 SHA512 73f526e020ce899e19699e5fd6cf6bcbfeba343f37f5b203dfc1488eb711941f492cb5ff16bdd14a974d34dd5893d0f89690928aeaf98e7289fc00d376d5807a
|
||||
MISC metadata.xml 330 BLAKE2B ae60f1e0f28436199a2f72cdb7ec2714258a8ba42eca5bee81c54bf3cfdbcaf04f450c737897242d064c611947124b8865d6b2720eea1eaca4e8643a8fd09e9c SHA512 5d888afdae9cd65ef26799a4c311dd11bbe8cbea93d6e8ba4e92086cce3df5708be39ea4c20a1ea0bd76d9e06846dd1f48af120f0812f4be75e9ae1f43e669bb
|
||||
|
@ -1,4 +1,4 @@
|
||||
# Copyright 1999-2018 Gentoo Foundation
|
||||
# Copyright 1999-2018 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=6
|
@ -1,4 +1,4 @@
|
||||
# Copyright 1999-2018 Gentoo Foundation
|
||||
# Copyright 1999-2018 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=6
|
Binary file not shown.
@ -0,0 +1,169 @@
|
||||
# Copyright 1999-2018 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=6
|
||||
|
||||
# google{test,mock} version
|
||||
GV="1.8.0"
|
||||
PYTHON_COMPAT=( python3_{4,5,6} )
|
||||
|
||||
inherit cmake-utils gnome2-utils python-single-r1 xdg-utils
|
||||
|
||||
DESCRIPTION="A personal finance manager"
|
||||
HOMEPAGE="http://www.gnucash.org/"
|
||||
SRC_URI="https://github.com/Gnucash/${PN}/releases/download/${PV}/${P}.tar.bz2
|
||||
https://github.com/google/googletest/archive/release-${GV}.tar.gz -> gtest-${GV}.tar.gz"
|
||||
|
||||
SLOT="0"
|
||||
LICENSE="GPL-2"
|
||||
KEYWORDS="~amd64 ~ppc ~ppc64 ~x86"
|
||||
|
||||
IUSE="aqbanking chipcard debug doc examples gnome-keyring mysql nls ofx postgres
|
||||
python quotes -register2 sqlite +gui"
|
||||
REQUIRED_USE="
|
||||
chipcard? ( aqbanking )
|
||||
python? ( ${PYTHON_REQUIRED_USE} )"
|
||||
|
||||
# libdbi version requirement for sqlite taken from bug #455134
|
||||
#
|
||||
# dev-libs/boost must always be built with nls enabled.
|
||||
RDEPEND="
|
||||
>=dev-libs/glib-2.40.0:2
|
||||
>=dev-libs/libxml2-2.7.0:2
|
||||
>=sys-libs/zlib-1.1.4
|
||||
>=dev-scheme/guile-2.0.0:12=[regex]
|
||||
dev-libs/boost:=[icu,nls]
|
||||
dev-libs/icu:=
|
||||
dev-libs/libxslt
|
||||
aqbanking? (
|
||||
>=net-libs/aqbanking-5[gtk,ofx?]
|
||||
sys-libs/gwenhywfar[gtk]
|
||||
chipcard? ( sys-libs/libchipcard )
|
||||
)
|
||||
gnome-keyring? ( >=app-crypt/libsecret-0.18 )
|
||||
gui? (
|
||||
gnome-base/dconf
|
||||
net-libs/webkit-gtk:4=
|
||||
>=x11-libs/gtk+-3.14.0:3
|
||||
)
|
||||
mysql? (
|
||||
dev-db/libdbi
|
||||
dev-db/libdbi-drivers[mysql]
|
||||
)
|
||||
ofx? ( >=dev-libs/libofx-0.9.1 )
|
||||
postgres? (
|
||||
dev-db/libdbi
|
||||
dev-db/libdbi-drivers[postgres]
|
||||
)
|
||||
python? ( ${PYTHON_DEPS} )
|
||||
quotes? (
|
||||
>=dev-perl/Finance-Quote-1.11
|
||||
dev-perl/Date-Manip
|
||||
dev-perl/HTML-TableExtract
|
||||
)
|
||||
sqlite? (
|
||||
>=dev-db/libdbi-0.9.0
|
||||
>=dev-db/libdbi-drivers-0.9.0[sqlite]
|
||||
)
|
||||
"
|
||||
|
||||
DEPEND="${RDEPEND}
|
||||
~dev-cpp/gtest-${GV}
|
||||
>=sys-devel/gettext-0.19.6
|
||||
dev-lang/perl
|
||||
dev-perl/XML-Parser
|
||||
sys-devel/libtool
|
||||
virtual/pkgconfig
|
||||
"
|
||||
|
||||
PDEPEND="doc? (
|
||||
~app-doc/gnucash-docs-${PV}
|
||||
gnome-extra/yelp
|
||||
)"
|
||||
|
||||
PATCHES=( "${FILESDIR}"/${PN}-3.2-no-gui.patch )
|
||||
|
||||
pkg_setup() {
|
||||
use python && python-single-r1_pkg_setup
|
||||
xdg_environment_reset
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
local sql_on_off="OFF"
|
||||
if use mysql || use postgres || use sqlite ; then
|
||||
sql_on_off="ON"
|
||||
fi
|
||||
|
||||
local mycmakeargs=(
|
||||
-DGMOCK_ROOT="${WORKDIR}"/googletest-release-${GV}/googlemock
|
||||
-DGTEST_ROOT="${WORKDIR}"/googletest-release-${GV}/googletest
|
||||
|
||||
-DDISABLE_NLS=$(usex !nls)
|
||||
-DENABLE_REGISTER2=$(usex register2)
|
||||
-DWITH_AQBANKING=$(usex aqbanking)
|
||||
-DWITH_OFX=$(usex ofx)
|
||||
-DWITH_PYTHON=$(usex python)
|
||||
-DWITH_SQL=${sql_on_off}
|
||||
-DWITH_GNUCASH=$(usex gui)
|
||||
)
|
||||
|
||||
cmake-utils_src_configure
|
||||
}
|
||||
|
||||
src_test() {
|
||||
if use python ; then
|
||||
cp common/test-core/unittest_support.py \
|
||||
"${BUILD_DIR}"/common/test-core/ || die
|
||||
fi
|
||||
|
||||
cd "${BUILD_DIR}" || die
|
||||
XDG_DATA_HOME="${T}/$(whoami)" emake check
|
||||
}
|
||||
|
||||
src_install() {
|
||||
cmake-utils_src_install
|
||||
|
||||
rm "${ED%/}"/usr/share/doc/${PF}/README.dependencies || die
|
||||
|
||||
if use gui ; then
|
||||
rm "${ED%/}"/usr/share/glib-2.0/schemas/gschemas.compiled || die
|
||||
fi
|
||||
|
||||
if use examples ; then
|
||||
mv "${ED%/}"/usr/share/doc/gnucash \
|
||||
"${ED%/}"/usr/share/doc/${PF}/examples || die
|
||||
pushd "${ED%/}"/usr/share/doc/${PF}/examples/ > /dev/null || die
|
||||
rm AUTHORS DOCUMENTERS LICENSE NEWS projects.html ChangeLog* \
|
||||
*win32-bin.txt || die
|
||||
popd > /dev/null || die
|
||||
docompress -x /usr/share/doc/${PF}/examples/
|
||||
else
|
||||
rm -r "${ED%/}"/usr/share/doc/gnucash || die
|
||||
fi
|
||||
|
||||
use aqbanking && dodoc doc/README.HBCI
|
||||
use ofx && dodoc doc/README.OFX
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
if use gui ; then
|
||||
gnome2_icon_cache_update
|
||||
gnome2_schemas_update
|
||||
fi
|
||||
xdg_desktop_database_update
|
||||
xdg_mimeinfo_database_update
|
||||
|
||||
ewarn "Backup all financial files or databases before using GnuCash >=2.7.0!"
|
||||
ewarn
|
||||
ewarn "GnuCash 2.7.0 introduced large changes in its file format and database"
|
||||
ewarn "schema that WILL prevent you from reverting back to GnuCash 2.6."
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
if use gui ; then
|
||||
gnome2_icon_cache_update
|
||||
gnome2_schemas_update
|
||||
fi
|
||||
xdg_desktop_database_update
|
||||
xdg_mimeinfo_database_update
|
||||
}
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
@ -1,3 +1,5 @@
|
||||
DIST breakpts-4.0.tar.bz2 17349 BLAKE2B c7ad9eed8fb13537c940e6868f5e4e5dd812a6b7f7c26c4617e3c24905b6e2a817dc91990b613b700e793dd763a6841f85dd7f9cc42fb9f5afc25c3609f909fc SHA512 a480bf32cd3e756ac25849b1d5fd20521bd8c965454bb94c33810c9d1d4464762a731d08dcae858c59853a6cf41ab3cb6cddeda440c8b041cc8ec192ab2bd2fd
|
||||
DIST breakpts-4.0.zip 20124 BLAKE2B 2ea7568af5407d57c4d4b505c69d625056d62e8f5bd25bf5ca13918e3ffbc0f83de2aedb0abc3468215a650308ed8b592a618c0b50c24dd8ad3f931ef5d2ff8b SHA512 3e7f148896a10abd30a16d903c14460668ee48d078ae3c3b6ff663dab53d32199d8cf9cd3a56164a32d0be2684e64a882e917f3f632318ce85db5eb07e29754d
|
||||
EBUILD breakpts-4.0-r1.ebuild 682 BLAKE2B bf0c5025e3e2707a805b6fbd22f97313235c6a7d55f0397015c36f7e0041305c374fc44104d5a26c1f56f9a7452b60fa26f72869d6fb65b1f433e9f90930780a SHA512 90aed4c69a96cf1cbbd27162d9e1b057792f3f1ccaf6335a99060bbf89fe2b1dfb0344c2999004802628329b567ff33728faf643df0cfc5eabd73ece79a1c250
|
||||
EBUILD breakpts-4.0-r2.ebuild 803 BLAKE2B 1ac75b05bd5d45dbcdc8cedb9687769c1deff041acd406824b62e40758c57927e95c031533d15a353a59a436d45f2cb3ca1519fb37c1dfdfcc6e27abb3d4d2e8 SHA512 eaf5a8afbd71843625a60c672bacc09b3e1d52d6ba6a69e0878ad48d0dd9fe1000ee67619b9cc0e5981fa80fd676e9ad0f62563bda5901eb9b97d2a09fbac701
|
||||
MISC metadata.xml 249 BLAKE2B 7ae6eac3ca23edbcbaa6aee682bb4aec155e3166f169eef8e4400e59fa56113ecc3593680d55cc57f08a4a718963dd3d0bb804bd1e8771ed60a4bebaae9db281 SHA512 4051dd059d975d2e1799125f7defbf5a62a168241d8b83d83710592efd60808800951c4fd6da1294044d7e7ec6b757b8d50593fd076696f826dec761e99645c7
|
||||
|
@ -0,0 +1,27 @@
|
||||
# Copyright 1999-2018 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
inherit vim-plugin
|
||||
|
||||
DESCRIPTION="vim plugin: sets vim breakpoints visually"
|
||||
HOMEPAGE="https://www.vim.org/scripts/script.php?script_id=618"
|
||||
SRC_URI="https://www.vim.org/scripts/download_script.php?src_id=8142 -> ${P}.zip"
|
||||
|
||||
LICENSE="GPL-2"
|
||||
KEYWORDS="~alpha ~amd64 ~ia64 ~mips ~ppc ~sparc ~x86"
|
||||
|
||||
S="${WORKDIR}"
|
||||
|
||||
RDEPEND="
|
||||
|| ( >=app-editors/vim-7.0 >=app-editors/gvim-7.0 )
|
||||
>=app-vim/multvals-3.6.1
|
||||
>=app-vim/genutils-1.13
|
||||
>=app-vim/foldutil-1.6"
|
||||
DEPEND="app-arch/unzip"
|
||||
|
||||
VIM_PLUGIN_HELPTEXT=\
|
||||
"This plugin allows breakpoints to be set and cleared visually. To start,
|
||||
use :BreakPts, move to the required function and press <CR>. Breakpoints
|
||||
can then be added using :BPToggle or <F9>."
|
Binary file not shown.
@ -0,0 +1,44 @@
|
||||
# Copyright 1999-2018 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=6
|
||||
|
||||
inherit cmake-utils
|
||||
|
||||
DESCRIPTION="A high-performance multi-threaded backup (and restore) toolset for MySQL"
|
||||
HOMEPAGE="https://github.com/maxbube/mydumper"
|
||||
SRC_URI="https://github.com/maxbube/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
|
||||
LICENSE="GPL-3"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
IUSE="doc"
|
||||
|
||||
COMMON_DEPEND="dev-db/mysql-connector-c:=
|
||||
dev-libs/glib:=
|
||||
dev-libs/libpcre:=
|
||||
dev-libs/openssl:=
|
||||
sys-libs/zlib:="
|
||||
DEPEND="${COMMON_DEPEND}
|
||||
virtual/pkgconfig
|
||||
doc? ( dev-python/sphinx )"
|
||||
RDEPEND="${COMMON_DEPEND}"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}/${PN}-atomic.patch" #654314
|
||||
)
|
||||
|
||||
src_prepare() {
|
||||
# respect user cflags; do not expand ${CMAKE_C_FLAGS} (!)
|
||||
sed -i -e 's:-Werror -O3 -g:${CMAKE_C_FLAGS}:' CMakeLists.txt || die
|
||||
|
||||
# fix doc install path
|
||||
sed -i -e "s:share/doc/mydumper:share/doc/${PF}:" docs/CMakeLists.txt || die
|
||||
|
||||
cmake-utils_src_prepare
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
local mycmakeargs=("-DBUILD_DOCS=$(usex doc)")
|
||||
|
||||
cmake-utils_src_configure
|
||||
}
|
@ -0,0 +1,51 @@
|
||||
# Copyright 1999-2018 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI="6"
|
||||
|
||||
inherit perl-module
|
||||
|
||||
DESCRIPTION="Advanced command-line tools to perform a variety of MySQL and system tasks"
|
||||
HOMEPAGE="https://www.percona.com/software/mysql-tools/percona-toolkit"
|
||||
SRC_URI="https://www.percona.com/downloads/${PN}/${PV}/source/tarball/${P}.tar.gz"
|
||||
|
||||
LICENSE="|| ( GPL-2 Artistic )"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux"
|
||||
# Package warrants IUSE doc
|
||||
IUSE=""
|
||||
|
||||
COMMON_DEPEND="dev-perl/DBI
|
||||
dev-perl/DBD-mysql
|
||||
virtual/perl-Time-HiRes"
|
||||
RDEPEND="${COMMON_DEPEND}
|
||||
dev-perl/JSON
|
||||
dev-perl/libwww-perl
|
||||
dev-perl/Role-Tiny
|
||||
virtual/perl-File-Path
|
||||
virtual/perl-Getopt-Long
|
||||
virtual/perl-Time-Local
|
||||
virtual/perl-Digest-MD5
|
||||
virtual/perl-IO-Compress
|
||||
virtual/perl-File-Temp
|
||||
virtual/perl-File-Spec
|
||||
virtual/perl-Scalar-List-Utils
|
||||
dev-perl/TermReadKey"
|
||||
DEPEND="${COMMON_DEPEND}
|
||||
virtual/perl-ExtUtils-MakeMaker"
|
||||
|
||||
# Bug #501904 - CVE-2014-2029
|
||||
# sed -i -e '/^=item --\[no\]version-check/,/^default: yes/{/^default: yes/d}' bin/*
|
||||
# ^ is *-no-versioncheck.patch
|
||||
PATCHES=(
|
||||
"${FILESDIR}"/${PN}-3.0.7-no-versioncheck.patch
|
||||
"${FILESDIR}"/${PN}-3.0.10-slave-delay-fix.patch
|
||||
)
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
|
||||
sed -i \
|
||||
-e "s/=> 'percona-toolkit',/=> 'Percona::Toolkit',/g" \
|
||||
Makefile.PL || die
|
||||
}
|
@ -1,11 +1,7 @@
|
||||
AUX logrotate 119 BLAKE2B 7ed90c0272410e5a37411f78aaa446d1688ceb5a5a0cfa652f8ea3d043f693af2b963aaf18bb230ec4cd5ae34f09219f02b9ee0ca5b43fe61489f46aa7a8d505 SHA512 5aa4226ab2d168a88a3b64deb114d3901431d2afb2571cf8ae411c989549bc465ee05104a6863cc8fce6d769d809b4ab536973280f50cb4415c6698c34e1a5b8
|
||||
AUX pgbouncer-1.8-dirs.patch 984 BLAKE2B 0e9a3550efad0669e4598513197c50460326f701dae628ae8c9fb201e08ae3f0c5826515c6a884a00f2b0afd048490b16d87f9b3b9cf836ca4c77284cd705334 SHA512 2c9ddd2ae193b032435f97d41e789283ae69d99fefeb3829e80a90be296ccd2a754a9d00e6930985408758dfa3349d65f3c2ddf1f74053424bc8d8d09b2fa0e2
|
||||
AUX pgbouncer.confd 425 BLAKE2B f9b7065c043474f2208b44eecefb9cd1d6544295a47c3aee51f340f522eb4ba87bb270c99e18183541aca144eb16487a622ff5f2b5d5b87b2d1c7dd950262afd SHA512 9f997cbfb18f5bb1623aea2a9af706359a973fd2167be91ee6ffb37a22a6dc453280c66b6d2c11ab0174dbf159a195f0a1612be198466633d728a5317a878035
|
||||
AUX pgbouncer.confd-r1 457 BLAKE2B 0b2e33b57ee33eac42742a8f9fe7c0f090bad53c5d7c29d86fd3047307bd05d62f922fc66a0805ba3396934f6e2e7060f810f1c71c5b07d887edf2763cc0f40d SHA512 0642b12236e944b6b5086b593dfd4a5d7c04c8347fc286835381945a50a421e87805900d63d84d12dcb1fad667fc81f21c8644c63af33388a71048ec6e024ab5
|
||||
AUX pgbouncer.initd-r1 2216 BLAKE2B cfc489a5db03b6e4c56c79036d070152a6f78ce6c300fdc52049aaf91c41db1e2a41af409e701ab8dc2a24a5ca4e8b89b38cc61c52885a1330a04ef727d7585e SHA512 c2af62daf4e7c8e5a25acd17237de2134f1e496a51bd054abecc020a65b39c309c85572c17105431fd598a80ada187fb32fa8f2b1db229d2207c59607748220a
|
||||
AUX pgbouncer.initd-r2 2204 BLAKE2B 9c417188d4a762906c7631f1ae8fc7c7b8f6c52805acf6bfc12d580c53b2faa4e36b7c0662852feaf78aebcc29498bb8ae441d749a710793508c6950a448862f SHA512 dd9e8f7487affcc46b359e6d07a4c2fd698626d7360d2b2929389bbd7a340059eb27f0e0e9a648b7005c446d65762edbb02b865fa68194ebb822c01fba19fd7e
|
||||
DIST pgbouncer-1.8.1.tar.gz 465930 BLAKE2B 692c551cb7bfb56bfe1b354791b06bdf61866197150a78a7fa9688891a2e4cd3c015abc5fbe33bf66dc85ab0ae83745f2db852eae91ae99596c97be0154e8bd5 SHA512 595a94db98866cec211f2b8c1ad13d209dba00e5fd41f2e9025aabdcb660194f0f772810270a1d9f067c3039c9fee630e8ff2d56f231935add17207aecc10bee
|
||||
DIST pgbouncer-1.9.0.tar.gz 469300 BLAKE2B 466f171a49ec9ce9be9a9d3208780cfbff956da7c74ec4332c7104ea537cb47a5cfdc0d80bbd96d233769b6f430f1ad99b623caefa2dc93af7ba336dd0f49514 SHA512 b127f4cb60ca5cdf339da76727918f0a3797a3e0a89f8ed6fdcaa80f3391d2c5bb51e19731915775210c0e5070dd611ee2e410c9a947624e45b5cf11aecdacf9
|
||||
EBUILD pgbouncer-1.8.1.ebuild 1892 BLAKE2B 7fab90d3eb06d905c21a42773532c21fb978d7040915d14262f5203eb54db0fb7a6747b88fcf0183b6980f29a81774d79b809c50193bfdc07def521b9df42f2c SHA512 723a646c3694518d5a0e40b8dc6dd6ea2d393b6dbebccfafb324a1d6f160415166c3ac1fbda068aadee277c2ac549fca92109d432a6ec49f20f687ffd06fe931
|
||||
EBUILD pgbouncer-1.9.0.ebuild 1893 BLAKE2B 1f8a2ebe177a2abdb5c0c4520f4e569a1d594e3504c016a7b7ac19d2b1253189640253d9e132347f7a32cce4be8bd5103795c7674f70875316f4a277d0279b21 SHA512 b459db67d75063209fe64537d7456a399dfae929e817e0ff9c788de17bbca92ef9f74165442d694632b154a5d7920245aabe93eeb6b90f1c1acaa8feb6017250
|
||||
EBUILD pgbouncer-1.9.0.ebuild 1892 BLAKE2B d44fc3cfb7219eceffd1052c04d857f9ad3a2d3fb588b6811c174eb3d8295e4c8dc2912c63b8b71c50eeff61d6cf4d0c96bc398587e35f18f26bb37fad439722 SHA512 070a4cf26ce72183d63cd7bd7d54ff9940c9ecfc4f289d3aa04b356a27d3c1bd70a82a5756e796f0acb25d40c17656c930f68c87d3b207c42f49f2fad103c253
|
||||
MISC metadata.xml 472 BLAKE2B b06a5dca1ee52c85fa1f948c4c8cf6e83c0aba3e0b0bd77672f1585c01d0a2f8ef4d7502e30e9cb658ec3dd3e53560671b69210166c36b4ce888e329f531585b SHA512 b098e87be6194706f462bb93c4bf5425023f7bd90a0ed421a51ea42db98c85ebd77f23eb413f4e271e126ad4404cd0bdf0694f675662c421f7afd8ec0f036b4d
|
||||
|
@ -1,12 +0,0 @@
|
||||
# Location of configuration file for PgBouncer.
|
||||
INIFILE="/etc/pgbouncer.ini"
|
||||
|
||||
# How long to wait in seconds for a safe shutdown. Equivalent to
|
||||
# issuing 'PAUSE;' and 'SHUTDOWN;' on psql console. (See 'man 1 pgbouncer'.)
|
||||
NICE_TIMEOUT=60
|
||||
|
||||
# Set to 'YES' to perform an immediate shutdown if the nice shutdown
|
||||
# doesn't work. Same as issuing 'SHUTDOWN;' on console. (See 'man 1
|
||||
# pgbouncer'.)
|
||||
FORCE_QUIT="no"
|
||||
FORCE_QUIT_TIMEOUT=2
|
@ -1,83 +0,0 @@
|
||||
#!/sbin/openrc-run
|
||||
|
||||
extra_started_commands="reload"
|
||||
|
||||
PIDFILE="/run/pgbouncer.pid"
|
||||
|
||||
depend() {
|
||||
use net
|
||||
after postgresql
|
||||
}
|
||||
|
||||
get_config() {
|
||||
[ -f "${INIFILE}" ] || eend 1 "'${INIFILE}' not found"
|
||||
|
||||
eval echo $(sed -e 's:;.*::' "${INIFILE}" | \
|
||||
awk '$1 == "'$1'" { print ($2 == "=" ? $3 : $2) }')
|
||||
}
|
||||
|
||||
start_pre() {
|
||||
local s="$(get_config unix_socket_dir)"
|
||||
|
||||
if [ -n "${s}" ] ; then
|
||||
checkpath -o root:postgres -m 1775 -d "${s}" || return 1
|
||||
|
||||
local listen_port="$(get_config listen_port)"
|
||||
|
||||
if [ -e "${s%/}/.s.PGSQL.${listen_port}" ] ; then
|
||||
eerror "Socket conflict."
|
||||
eerror "A server is already listening on:"
|
||||
eerror " ${s%/}/.s.PGSQL.${listen_port}"
|
||||
eerror "HINT: Change listen_port in pgbouncer.ini to listen on a"
|
||||
eerror "different socket."
|
||||
return 1
|
||||
fi
|
||||
fi
|
||||
|
||||
checkpath -o pgbouncer:postgres -m 0755 \
|
||||
-d "$(dirname $(get_config logfile))" || return 1
|
||||
checkpath -o pgbouncer:postgres -m 0640 \
|
||||
-f "$(get_config logfile)" || return 1
|
||||
|
||||
return 0
|
||||
}
|
||||
|
||||
start() {
|
||||
ebegin "Starting PgBouncer"
|
||||
[ -f ${PIDFILE} ] && rm ${PIDFILE}
|
||||
|
||||
start-stop-daemon --start \
|
||||
--pidfile ${PIDFILE} \
|
||||
--background \
|
||||
--make-pidfile \
|
||||
--user pgbouncer \
|
||||
--exec /usr/bin/pgbouncer \
|
||||
-- -q "${INIFILE}"
|
||||
eend $?
|
||||
}
|
||||
|
||||
stop() {
|
||||
local seconds=$(( ${NICE_TIMEOUT} + ${FORCE_QUIT_TIMEOUT} ))
|
||||
ebegin "Stopping PgBouncer (this can take up to ${seconds} seconds)"
|
||||
|
||||
local retries=SIGINT/${NICE_TIMEOUT}
|
||||
|
||||
if [ "${FORCE_QUIT}" = "YES" ] ; then
|
||||
einfo "FORCE_QUIT enabled."
|
||||
retries="${retries}/SIGTERM/${FORCE_QUIT_TIMEOUT}"
|
||||
fi
|
||||
|
||||
# Loops through nice and force quit in one go.
|
||||
start-stop-daemon --stop \
|
||||
--user pgbouncer \
|
||||
--pidfile ${PIDFILE} \
|
||||
--retry ${retries}
|
||||
|
||||
eend $?
|
||||
}
|
||||
|
||||
reload() {
|
||||
ebegin "Reloading PgBouncer configuration from '${INIFILE}'"
|
||||
start-stop-daemon --signal HUP --pidfile ${PIDFILE}
|
||||
eend $?
|
||||
}
|
@ -1,86 +0,0 @@
|
||||
# Copyright 1999-2018 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI="6"
|
||||
|
||||
inherit user
|
||||
|
||||
DESCRIPTION="Lightweight connection pooler for PostgreSQL"
|
||||
HOMEPAGE="https://pgbouncer.github.io"
|
||||
SRC_URI="https://pgbouncer.github.io/downloads/files/${PV}/${P}.tar.gz"
|
||||
LICENSE="BSD"
|
||||
SLOT="0"
|
||||
KEYWORDS="amd64 x86"
|
||||
IUSE="+c-ares debug doc pam ssl -udns"
|
||||
|
||||
# At-most-one-of, one can be enabled but not both
|
||||
REQUIRED_USE="?? ( c-ares udns )"
|
||||
|
||||
RDEPEND="
|
||||
>=dev-libs/libevent-2.0
|
||||
>=sys-libs/glibc-2.10
|
||||
c-ares? ( >=net-dns/c-ares-1.10 )
|
||||
ssl? ( >=dev-libs/openssl-1.0.1:=[-bindist] )
|
||||
udns? ( >=net-libs/udns-0.1 )
|
||||
"
|
||||
|
||||
DEPEND="${RDEPEND}"
|
||||
|
||||
pkg_setup() {
|
||||
enewgroup postgres 70
|
||||
enewuser postgres 70 /bin/bash /var/lib/postgresql postgres
|
||||
|
||||
enewuser pgbouncer -1 -1 -1 postgres
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
eapply "${FILESDIR}/pgbouncer-1.8-dirs.patch"
|
||||
|
||||
default
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
# --enable-debug is only used to disable stripping
|
||||
econf \
|
||||
--docdir=/usr/share/doc/${PF} \
|
||||
--enable-debug \
|
||||
$(use_with c-ares cares) \
|
||||
$(use_enable debug cassert) \
|
||||
$(use_with pam) \
|
||||
$(use_with ssl openssl) \
|
||||
$(use_with udns)
|
||||
}
|
||||
|
||||
src_test() {
|
||||
cd "${S}/test"
|
||||
emake
|
||||
}
|
||||
|
||||
src_install() {
|
||||
emake DESTDIR="${D}" install
|
||||
|
||||
dodoc AUTHORS
|
||||
use doc && dodoc doc/*.rst
|
||||
|
||||
newconfd "${FILESDIR}/${PN}.confd" "${PN}"
|
||||
newinitd "${FILESDIR}/${PN}.initd-r1" "${PN}"
|
||||
|
||||
insinto /etc
|
||||
doins etc/pgbouncer.ini
|
||||
|
||||
insinto /etc/logrotate.d
|
||||
newins "${FILESDIR}/logrotate" pgbouncer
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
if [[ -z ${REPLACING_VERSIONS} ]] ; then
|
||||
einfo "Please read the config.txt for Configuration Directives"
|
||||
einfo
|
||||
einfo "For Administration Commands, see:"
|
||||
einfo " man pgbouncer"
|
||||
einfo
|
||||
einfo "By default, PgBouncer does not have access to any database."
|
||||
einfo "GRANT the permissions needed for your application and make sure that it"
|
||||
einfo "exists in PgBouncer's auth_file."
|
||||
fi
|
||||
}
|
@ -0,0 +1,407 @@
|
||||
Move some code to libsqlite3.so to avoid duplication.
|
||||
Link executables against libsqlite3.so.
|
||||
Increase timeout for fuzzcheck.
|
||||
Fix building with dlopen() not available.
|
||||
|
||||
--- /Makefile.in
|
||||
+++ /Makefile.in
|
||||
@@ -310,6 +310,9 @@
|
||||
# Source code for extensions
|
||||
#
|
||||
SRC += \
|
||||
+ $(TOP)/ext/expert/sqlite3expert.c \
|
||||
+ $(TOP)/ext/expert/sqlite3expert.h
|
||||
+SRC += \
|
||||
$(TOP)/ext/fts1/fts1.c \
|
||||
$(TOP)/ext/fts1/fts1.h \
|
||||
$(TOP)/ext/fts1/fts1_hash.c \
|
||||
@@ -359,8 +362,11 @@
|
||||
$(TOP)/ext/rbu/sqlite3rbu.h \
|
||||
$(TOP)/ext/rbu/sqlite3rbu.c
|
||||
SRC += \
|
||||
+ $(TOP)/ext/misc/appendvfs.c \
|
||||
$(TOP)/ext/misc/json1.c \
|
||||
- $(TOP)/ext/misc/stmt.c
|
||||
+ $(TOP)/ext/misc/sqlar.c \
|
||||
+ $(TOP)/ext/misc/stmt.c \
|
||||
+ $(TOP)/ext/misc/zipfile.c
|
||||
|
||||
# Generated source code files
|
||||
#
|
||||
@@ -430,7 +436,6 @@
|
||||
# Statically linked extensions
|
||||
#
|
||||
TESTSRC += \
|
||||
- $(TOP)/ext/expert/sqlite3expert.c \
|
||||
$(TOP)/ext/expert/test_expert.c \
|
||||
$(TOP)/ext/misc/amatch.c \
|
||||
$(TOP)/ext/misc/carray.c \
|
||||
@@ -453,8 +458,7 @@
|
||||
$(TOP)/ext/misc/spellfix.c \
|
||||
$(TOP)/ext/misc/totype.c \
|
||||
$(TOP)/ext/misc/unionvtab.c \
|
||||
- $(TOP)/ext/misc/wholenumber.c \
|
||||
- $(TOP)/ext/misc/zipfile.c
|
||||
+ $(TOP)/ext/misc/wholenumber.c
|
||||
|
||||
# Source code to the library files needed by the test fixture
|
||||
#
|
||||
@@ -620,25 +624,25 @@
|
||||
|
||||
libtclsqlite3.la: tclsqlite.lo libsqlite3.la
|
||||
$(LTLINK) -no-undefined -o $@ tclsqlite.lo \
|
||||
- libsqlite3.la @TCL_STUB_LIB_SPEC@ $(TLIBS) \
|
||||
+ libsqlite3.la @TCL_STUB_LIB_SPEC@ \
|
||||
-rpath "$(TCLLIBDIR)" \
|
||||
-version-info "8:6:8" \
|
||||
-avoid-version
|
||||
|
||||
-sqlite3$(TEXE): shell.c sqlite3.c
|
||||
- $(LTLINK) $(READLINE_FLAGS) $(SHELL_OPT) -o $@ \
|
||||
- shell.c sqlite3.c \
|
||||
- $(LIBREADLINE) $(TLIBS) -rpath "$(libdir)"
|
||||
+sqlite3$(TEXE): shell.c libsqlite3.la
|
||||
+ $(LTLINK) $(READLINE_FLAGS) -o $@ \
|
||||
+ shell.c libsqlite3.la \
|
||||
+ $(LIBREADLINE)
|
||||
|
||||
-sqldiff$(TEXE): $(TOP)/tool/sqldiff.c sqlite3.lo sqlite3.h
|
||||
- $(LTLINK) -o $@ $(TOP)/tool/sqldiff.c sqlite3.lo $(TLIBS)
|
||||
+sqldiff$(TEXE): $(TOP)/tool/sqldiff.c libsqlite3.la
|
||||
+ $(LTLINK) -o $@ $(TOP)/tool/sqldiff.c libsqlite3.la
|
||||
|
||||
-dbhash$(TEXE): $(TOP)/tool/dbhash.c sqlite3.lo sqlite3.h
|
||||
- $(LTLINK) -o $@ $(TOP)/tool/dbhash.c sqlite3.lo $(TLIBS)
|
||||
+dbhash$(TEXE): $(TOP)/tool/dbhash.c libsqlite3.la
|
||||
+ $(LTLINK) -o $@ $(TOP)/tool/dbhash.c libsqlite3.la
|
||||
|
||||
-scrub$(TEXE): $(TOP)/ext/misc/scrub.c sqlite3.lo
|
||||
+scrub$(TEXE): $(TOP)/ext/misc/scrub.c libsqlite3.la
|
||||
$(LTLINK) -o $@ -I. -DSCRUB_STANDALONE \
|
||||
- $(TOP)/ext/misc/scrub.c sqlite3.lo $(TLIBS)
|
||||
+ $(TOP)/ext/misc/scrub.c libsqlite3.la
|
||||
|
||||
srcck1$(BEXE): $(TOP)/tool/srcck1.c
|
||||
$(BCC) -o srcck1$(BEXE) $(TOP)/tool/srcck1.c
|
||||
@@ -717,7 +721,7 @@
|
||||
# Rule to build the amalgamation
|
||||
#
|
||||
sqlite3.lo: sqlite3.c
|
||||
- $(LTCOMPILE) $(TEMP_STORE) -c sqlite3.c
|
||||
+ $(LTCOMPILE) $(SHELL_OPT) $(TEMP_STORE) -c sqlite3.c
|
||||
|
||||
# Rules to build the LEMON compiler generator
|
||||
#
|
||||
@@ -1017,14 +1021,9 @@
|
||||
# Source files that go into making shell.c
|
||||
SHELL_SRC = \
|
||||
$(TOP)/src/shell.c.in \
|
||||
- $(TOP)/ext/misc/appendvfs.c \
|
||||
$(TOP)/ext/misc/shathree.c \
|
||||
$(TOP)/ext/misc/fileio.c \
|
||||
$(TOP)/ext/misc/completion.c \
|
||||
- $(TOP)/ext/misc/sqlar.c \
|
||||
- $(TOP)/ext/expert/sqlite3expert.c \
|
||||
- $(TOP)/ext/expert/sqlite3expert.h \
|
||||
- $(TOP)/ext/misc/zipfile.c \
|
||||
$(TOP)/src/test_windirent.c
|
||||
|
||||
shell.c: $(SHELL_SRC) $(TOP)/tool/mkshellc.tcl
|
||||
@@ -1183,15 +1182,15 @@
|
||||
|
||||
# Fuzz testing
|
||||
fuzztest: fuzzcheck$(TEXE) $(FUZZDATA) sessionfuzz$(TEXE) $(TOP)/test/sessionfuzz-data1.db
|
||||
- ./fuzzcheck$(TEXE) $(FUZZDATA)
|
||||
+ ./fuzzcheck$(TEXE) --timeout 3600 $(FUZZDATA)
|
||||
./sessionfuzz$(TEXE) run $(TOP)/test/sessionfuzz-data1.db
|
||||
|
||||
fastfuzztest: fuzzcheck$(TEXE) $(FUZZDATA) sessionfuzz$(TEXE) $(TOP)/test/sessionfuzz-data1.db
|
||||
- ./fuzzcheck$(TEXE) --limit-mem 100M $(FUZZDATA)
|
||||
+ ./fuzzcheck$(TEXE) --limit-mem 100M --timeout 3600 $(FUZZDATA)
|
||||
./sessionfuzz$(TEXE) run $(TOP)/test/sessionfuzz-data1.db
|
||||
|
||||
valgrindfuzz: fuzzcheck$(TEXT) $(FUZZDATA) sessionfuzz$(TEXE) $(TOP)/test/sessionfuzz-data1.db
|
||||
- valgrind ./fuzzcheck$(TEXE) --cell-size-check --limit-mem 10M --timeout 600 $(FUZZDATA)
|
||||
+ valgrind ./fuzzcheck$(TEXE) --cell-size-check --limit-mem 10M --timeout 3600 $(FUZZDATA)
|
||||
valgrind ./sessionfuzz$(TEXE) run $(TOP)/test/sessionfuzz-data1.db
|
||||
|
||||
# The veryquick.test TCL tests.
|
||||
@@ -1222,24 +1221,23 @@
|
||||
smoketest: $(TESTPROGS) fuzzcheck$(TEXE)
|
||||
./testfixture$(TEXE) $(TOP)/test/main.test $(TESTOPTS)
|
||||
|
||||
-sqlite3_analyzer.c: sqlite3.c $(TOP)/src/tclsqlite.c $(TOP)/tool/spaceanal.tcl $(TOP)/tool/mkccode.tcl $(TOP)/tool/sqlite3_analyzer.c.in
|
||||
+sqlite3_analyzer.c: $(TOP)/src/tclsqlite.c $(TOP)/tool/spaceanal.tcl $(TOP)/tool/mkccode.tcl $(TOP)/tool/sqlite3_analyzer.c.in
|
||||
$(TCLSH_CMD) $(TOP)/tool/mkccode.tcl $(TOP)/tool/sqlite3_analyzer.c.in >sqlite3_analyzer.c
|
||||
|
||||
-sqlite3_analyzer$(TEXE): sqlite3_analyzer.c
|
||||
- $(LTLINK) sqlite3_analyzer.c -o $@ $(LIBTCL) $(TLIBS)
|
||||
+sqlite3_analyzer$(TEXE): sqlite3_analyzer.c libsqlite3.la
|
||||
+ $(LTLINK) sqlite3_analyzer.c -o $@ libsqlite3.la $(LIBTCL)
|
||||
|
||||
-sqltclsh.c: sqlite3.c $(TOP)/src/tclsqlite.c $(TOP)/tool/sqltclsh.tcl $(TOP)/ext/misc/appendvfs.c $(TOP)/tool/mkccode.tcl $(TOP)/tool/sqltclsh.c.in
|
||||
+sqltclsh.c: $(TOP)/src/tclsqlite.c $(TOP)/tool/sqltclsh.tcl $(TOP)/tool/mkccode.tcl $(TOP)/tool/sqltclsh.c.in
|
||||
$(TCLSH_CMD) $(TOP)/tool/mkccode.tcl $(TOP)/tool/sqltclsh.c.in >sqltclsh.c
|
||||
|
||||
-sqltclsh$(TEXE): sqltclsh.c
|
||||
- $(LTLINK) sqltclsh.c -o $@ $(LIBTCL) $(TLIBS)
|
||||
+sqltclsh$(TEXE): sqltclsh.c libsqlite3.la
|
||||
+ $(LTLINK) sqltclsh.c -o $@ libsqlite3.la $(LIBTCL)
|
||||
|
||||
-sqlite3_expert$(TEXE): $(TOP)/ext/expert/sqlite3expert.h $(TOP)/ext/expert/sqlite3expert.c $(TOP)/ext/expert/expert.c sqlite3.c
|
||||
- $(LTLINK) $(TOP)/ext/expert/sqlite3expert.h $(TOP)/ext/expert/sqlite3expert.c $(TOP)/ext/expert/expert.c sqlite3.c -o sqlite3_expert $(TLIBS)
|
||||
+sqlite3_expert$(TEXE): $(TOP)/ext/expert/sqlite3expert.h $(TOP)/ext/expert/expert.c libsqlite3.la
|
||||
+ $(LTLINK) $(TOP)/ext/expert/expert.c -o sqlite3_expert libsqlite3.la
|
||||
|
||||
CHECKER_DEPS =\
|
||||
$(TOP)/tool/mkccode.tcl \
|
||||
- sqlite3.c \
|
||||
$(TOP)/src/tclsqlite.c \
|
||||
$(TOP)/ext/repair/sqlite3_checker.tcl \
|
||||
$(TOP)/ext/repair/checkindex.c \
|
||||
@@ -1250,30 +1248,30 @@
|
||||
sqlite3_checker.c: $(CHECKER_DEPS)
|
||||
$(TCLSH_CMD) $(TOP)/tool/mkccode.tcl $(TOP)/ext/repair/sqlite3_checker.c.in >$@
|
||||
|
||||
-sqlite3_checker$(TEXE): sqlite3_checker.c
|
||||
- $(LTLINK) sqlite3_checker.c -o $@ $(LIBTCL) $(TLIBS)
|
||||
+sqlite3_checker$(TEXE): sqlite3_checker.c libsqlite3.la
|
||||
+ $(LTLINK) sqlite3_checker.c -o $@ libsqlite3.la $(LIBTCL)
|
||||
|
||||
-dbdump$(TEXE): $(TOP)/ext/misc/dbdump.c sqlite3.lo
|
||||
+dbdump$(TEXE): $(TOP)/ext/misc/dbdump.c libsqlite3.la
|
||||
$(LTLINK) -DDBDUMP_STANDALONE -o $@ \
|
||||
- $(TOP)/ext/misc/dbdump.c sqlite3.lo $(TLIBS)
|
||||
+ $(TOP)/ext/misc/dbdump.c libsqlite3.la
|
||||
|
||||
-showdb$(TEXE): $(TOP)/tool/showdb.c sqlite3.lo
|
||||
- $(LTLINK) -o $@ $(TOP)/tool/showdb.c sqlite3.lo $(TLIBS)
|
||||
+showdb$(TEXE): $(TOP)/tool/showdb.c libsqlite3.la
|
||||
+ $(LTLINK) -o $@ $(TOP)/tool/showdb.c libsqlite3.la
|
||||
|
||||
-showstat4$(TEXE): $(TOP)/tool/showstat4.c sqlite3.lo
|
||||
- $(LTLINK) -o $@ $(TOP)/tool/showstat4.c sqlite3.lo $(TLIBS)
|
||||
+showstat4$(TEXE): $(TOP)/tool/showstat4.c libsqlite3.la
|
||||
+ $(LTLINK) -o $@ $(TOP)/tool/showstat4.c libsqlite3.la
|
||||
|
||||
-showjournal$(TEXE): $(TOP)/tool/showjournal.c sqlite3.lo
|
||||
- $(LTLINK) -o $@ $(TOP)/tool/showjournal.c sqlite3.lo $(TLIBS)
|
||||
+showjournal$(TEXE): $(TOP)/tool/showjournal.c
|
||||
+ $(LTLINK) -o $@ $(TOP)/tool/showjournal.c
|
||||
|
||||
-showwal$(TEXE): $(TOP)/tool/showwal.c sqlite3.lo
|
||||
- $(LTLINK) -o $@ $(TOP)/tool/showwal.c sqlite3.lo $(TLIBS)
|
||||
+showwal$(TEXE): $(TOP)/tool/showwal.c
|
||||
+ $(LTLINK) -o $@ $(TOP)/tool/showwal.c
|
||||
|
||||
showshm$(TEXE): $(TOP)/tool/showshm.c
|
||||
$(LTLINK) -o $@ $(TOP)/tool/showshm.c
|
||||
|
||||
-changeset$(TEXE): $(TOP)/ext/session/changeset.c sqlite3.lo
|
||||
- $(LTLINK) -o $@ $(TOP)/ext/session/changeset.c sqlite3.lo $(TLIBS)
|
||||
+changeset$(TEXE): $(TOP)/ext/session/changeset.c libsqlite3.la
|
||||
+ $(LTLINK) -o $@ $(TOP)/ext/session/changeset.c libsqlite3.la
|
||||
|
||||
rollback-test$(TEXE): $(TOP)/tool/rollback-test.c sqlite3.lo
|
||||
$(LTLINK) -o $@ $(TOP)/tool/rollback-test.c sqlite3.lo $(TLIBS)
|
||||
@@ -1295,11 +1293,11 @@
|
||||
kvtest$(TEXE): $(TOP)/test/kvtest.c sqlite3.c
|
||||
$(LTLINK) $(KV_OPT) -o $@ $(TOP)/test/kvtest.c sqlite3.c $(TLIBS)
|
||||
|
||||
-rbu$(EXE): $(TOP)/ext/rbu/rbu.c $(TOP)/ext/rbu/sqlite3rbu.c sqlite3.lo
|
||||
- $(LTLINK) -I. -o $@ $(TOP)/ext/rbu/rbu.c sqlite3.lo $(TLIBS)
|
||||
+rbu$(EXE): $(TOP)/ext/rbu/rbu.c libsqlite3.la
|
||||
+ $(LTLINK) -I. -o $@ $(TOP)/ext/rbu/rbu.c libsqlite3.la
|
||||
|
||||
-loadfts$(EXE): $(TOP)/tool/loadfts.c libsqlite3.la
|
||||
- $(LTLINK) $(TOP)/tool/loadfts.c libsqlite3.la -o $@ $(TLIBS)
|
||||
+loadfts$(EXE): $(TOP)/tool/loadfts.c libsqlite3.la
|
||||
+ $(LTLINK) $(TOP)/tool/loadfts.c libsqlite3.la -o $@
|
||||
|
||||
# This target will fail if the SQLite amalgamation contains any exported
|
||||
# symbols that do not begin with "sqlite3_". It is run as part of the
|
||||
--- /configure.ac
|
||||
+++ /configure.ac
|
||||
@@ -587,6 +587,9 @@
|
||||
if test "${enable_load_extension}" = "yes" ; then
|
||||
OPT_FEATURE_FLAGS=""
|
||||
AC_SEARCH_LIBS(dlopen, dl)
|
||||
+ if test "${ac_cv_search_dlopen}" = "no" ; then
|
||||
+ OPT_FEATURE_FLAGS="-DSQLITE_OMIT_LOAD_EXTENSION=1"
|
||||
+ fi
|
||||
else
|
||||
OPT_FEATURE_FLAGS="-DSQLITE_OMIT_LOAD_EXTENSION=1"
|
||||
fi
|
||||
--- /ext/misc/sqlar.c
|
||||
+++ /ext/misc/sqlar.c
|
||||
@@ -14,6 +14,8 @@
|
||||
** for working with sqlar archives and used by the shell tool's built-in
|
||||
** sqlar support.
|
||||
*/
|
||||
+#ifdef SQLITE_HAVE_ZLIB
|
||||
+
|
||||
#include "sqlite3ext.h"
|
||||
SQLITE_EXTENSION_INIT1
|
||||
#include <zlib.h>
|
||||
@@ -119,3 +121,5 @@
|
||||
}
|
||||
return rc;
|
||||
}
|
||||
+
|
||||
+#endif /* SQLITE_HAVE_ZLIB */
|
||||
--- /ext/misc/zipfile.c
|
||||
+++ /ext/misc/zipfile.c
|
||||
@@ -24,6 +24,8 @@
|
||||
** * No support for zip64 extensions
|
||||
** * Only the "inflate/deflate" (zlib) compression method is supported
|
||||
*/
|
||||
+#ifdef SQLITE_HAVE_ZLIB
|
||||
+
|
||||
#include "sqlite3ext.h"
|
||||
SQLITE_EXTENSION_INIT1
|
||||
#include <stdio.h>
|
||||
@@ -2175,3 +2177,5 @@
|
||||
(void)pzErrMsg; /* Unused parameter */
|
||||
return zipfileRegister(db);
|
||||
}
|
||||
+
|
||||
+#endif /* SQLITE_HAVE_ZLIB */
|
||||
--- /ext/repair/sqlite3_checker.c.in
|
||||
+++ /ext/repair/sqlite3_checker.c.in
|
||||
@@ -2,6 +2,7 @@
|
||||
** Read an SQLite database file and analyze its space utilization. Generate
|
||||
** text on standard output.
|
||||
*/
|
||||
+#define SQLITE_CORE 1
|
||||
#define TCLSH_INIT_PROC sqlite3_checker_init_proc
|
||||
#define SQLITE_ENABLE_DBPAGE_VTAB 1
|
||||
#define SQLITE_ENABLE_JSON1 1
|
||||
@@ -14,7 +15,7 @@
|
||||
#define SQLITE_OMIT_SHARED_CACHE 1
|
||||
#define SQLITE_DEFAULT_MEMSTATUS 0
|
||||
#define SQLITE_MAX_EXPR_DEPTH 0
|
||||
-INCLUDE sqlite3.c
|
||||
+#include "sqlite3.h"
|
||||
INCLUDE $ROOT/src/tclsqlite.c
|
||||
INCLUDE $ROOT/ext/misc/btreeinfo.c
|
||||
INCLUDE $ROOT/ext/repair/checkindex.c
|
||||
--- /src/shell.c.in
|
||||
+++ /src/shell.c.in
|
||||
@@ -61,6 +61,7 @@
|
||||
#include <stdio.h>
|
||||
#include <assert.h>
|
||||
#include "sqlite3.h"
|
||||
+#include "ext/expert/sqlite3expert.h"
|
||||
typedef sqlite3_int64 i64;
|
||||
typedef sqlite3_uint64 u64;
|
||||
typedef unsigned char u8;
|
||||
@@ -127,6 +128,10 @@
|
||||
# define SHELL_USE_LOCAL_GETLINE 1
|
||||
#endif
|
||||
|
||||
+#ifdef SQLITE_HAVE_ZLIB
|
||||
+#include <zlib.h>
|
||||
+#endif
|
||||
+
|
||||
|
||||
#if defined(_WIN32) || defined(WIN32)
|
||||
# include <io.h>
|
||||
@@ -936,13 +941,6 @@
|
||||
INCLUDE ../ext/misc/shathree.c
|
||||
INCLUDE ../ext/misc/fileio.c
|
||||
INCLUDE ../ext/misc/completion.c
|
||||
-INCLUDE ../ext/misc/appendvfs.c
|
||||
-#ifdef SQLITE_HAVE_ZLIB
|
||||
-INCLUDE ../ext/misc/zipfile.c
|
||||
-INCLUDE ../ext/misc/sqlar.c
|
||||
-#endif
|
||||
-INCLUDE ../ext/expert/sqlite3expert.h
|
||||
-INCLUDE ../ext/expert/sqlite3expert.c
|
||||
|
||||
#if defined(SQLITE_ENABLE_SESSION)
|
||||
/*
|
||||
@@ -3654,7 +3652,9 @@
|
||||
sqlite3_shathree_init(p->db, 0, 0);
|
||||
sqlite3_completion_init(p->db, 0, 0);
|
||||
#ifdef SQLITE_HAVE_ZLIB
|
||||
+ extern int sqlite3_zipfile_init(sqlite3 *, char **, const sqlite3_api_routines *);
|
||||
sqlite3_zipfile_init(p->db, 0, 0);
|
||||
+ extern int sqlite3_sqlar_init(sqlite3 *, char **, const sqlite3_api_routines *);
|
||||
sqlite3_sqlar_init(p->db, 0, 0);
|
||||
#endif
|
||||
sqlite3_create_function(p->db, "shell_add_schema", 3, SQLITE_UTF8, 0,
|
||||
@@ -5549,6 +5549,7 @@
|
||||
goto end_ar_command;
|
||||
}
|
||||
sqlite3_fileio_init(cmd.db, 0, 0);
|
||||
+ extern int sqlite3_sqlar_init(sqlite3 *, char **, const sqlite3_api_routines *);
|
||||
sqlite3_sqlar_init(cmd.db, 0, 0);
|
||||
sqlite3_create_function(cmd.db, "shell_putsnl", 1, SQLITE_UTF8, cmd.p,
|
||||
shellPutsFunc, 0, 0);
|
||||
@@ -8584,6 +8585,7 @@
|
||||
#endif
|
||||
}
|
||||
data.out = stdout;
|
||||
+ extern int sqlite3_appendvfs_init(sqlite3 *, char **, const sqlite3_api_routines *);
|
||||
sqlite3_appendvfs_init(0,0,0);
|
||||
|
||||
/* Go ahead and open the database file if it already exists. If the
|
||||
--- /tool/mksqlite3c.tcl
|
||||
+++ /tool/mksqlite3c.tcl
|
||||
@@ -117,6 +117,7 @@
|
||||
rtree.h
|
||||
sqlite3session.h
|
||||
sqlite3.h
|
||||
+ sqlite3expert.h
|
||||
sqlite3ext.h
|
||||
sqlite3rbu.h
|
||||
sqliteicu.h
|
||||
@@ -403,6 +404,10 @@
|
||||
sqlite3session.c
|
||||
fts5.c
|
||||
stmt.c
|
||||
+ appendvfs.c
|
||||
+ sqlar.c
|
||||
+ sqlite3expert.c
|
||||
+ zipfile.c
|
||||
} {
|
||||
copy_file tsrc/$file
|
||||
}
|
||||
--- /tool/sqlite3_analyzer.c.in
|
||||
+++ /tool/sqlite3_analyzer.c.in
|
||||
@@ -14,9 +14,6 @@
|
||||
#define SQLITE_DEFAULT_MEMSTATUS 0
|
||||
#define SQLITE_MAX_EXPR_DEPTH 0
|
||||
#define SQLITE_OMIT_LOAD_EXTENSION 1
|
||||
-#ifndef USE_EXTERNAL_SQLITE
|
||||
-INCLUDE sqlite3.c
|
||||
-#endif
|
||||
INCLUDE $ROOT/src/tclsqlite.c
|
||||
|
||||
const char *sqlite3_analyzer_init_proc(Tcl_Interp *interp){
|
||||
--- /tool/sqltclsh.c.in
|
||||
+++ /tool/sqltclsh.c.in
|
||||
@@ -27,19 +27,17 @@
|
||||
#define SQLITE_OMIT_SHARED_CACHE 1
|
||||
#define SQLITE_DEFAULT_MEMSTATUS 0
|
||||
#define SQLITE_MAX_EXPR_DEPTH 0
|
||||
-INCLUDE sqlite3.c
|
||||
-INCLUDE $ROOT/ext/misc/appendvfs.c
|
||||
-#ifdef SQLITE_HAVE_ZLIB
|
||||
-INCLUDE $ROOT/ext/misc/zipfile.c
|
||||
-INCLUDE $ROOT/ext/misc/sqlar.c
|
||||
-#endif
|
||||
+#include "sqlite3.h"
|
||||
INCLUDE $ROOT/src/tclsqlite.c
|
||||
|
||||
const char *sqlite3_tclapp_init_proc(Tcl_Interp *interp){
|
||||
(void)interp;
|
||||
+ extern int sqlite3_appendvfs_init(sqlite3 *,char **, const sqlite3_api_routines *);
|
||||
sqlite3_appendvfs_init(0,0,0);
|
||||
#ifdef SQLITE_HAVE_ZLIB
|
||||
+ extern int sqlite3_sqlar_init(sqlite3 *, char **, const sqlite3_api_routines *);
|
||||
sqlite3_auto_extension((void(*)(void))sqlite3_sqlar_init);
|
||||
+ extern int sqlite3_zipfile_init(sqlite3 *, char **, const sqlite3_api_routines *);
|
||||
sqlite3_auto_extension((void(*)(void))sqlite3_zipfile_init);
|
||||
#endif
|
||||
|
@ -0,0 +1,14 @@
|
||||
Fix building with dlopen() not available.
|
||||
|
||||
--- /configure.ac
|
||||
+++ /configure.ac
|
||||
@@ -102,6 +102,9 @@
|
||||
[], [enable_dynamic_extensions=yes])
|
||||
if test x"$enable_dynamic_extensions" != "xno"; then
|
||||
AC_SEARCH_LIBS(dlopen, dl)
|
||||
+ if test "${ac_cv_search_dlopen}" = "no"; then
|
||||
+ BUILD_CFLAGS="$BUILD_CFLAGS -DSQLITE_OMIT_LOAD_EXTENSION=1"
|
||||
+ fi
|
||||
else
|
||||
BUILD_CFLAGS="$BUILD_CFLAGS -DSQLITE_OMIT_LOAD_EXTENSION=1"
|
||||
fi
|
@ -0,0 +1,49 @@
|
||||
https://sqlite.org/src/info/e8275b415a2f03bee
|
||||
https://sqlite.org/src/info/7fc2994434c7d9ed
|
||||
|
||||
--- /src/select.c
|
||||
+++ /src/select.c
|
||||
@@ -2318,6 +2318,13 @@
|
||||
Expr *pLimit; /* Saved LIMIT and OFFSET */
|
||||
int regLimit, regOffset; /* Registers used by LIMIT and OFFSET */
|
||||
|
||||
+#ifndef SQLITE_OMIT_WINDOWFUNC
|
||||
+ if( p->pWin ){
|
||||
+ sqlite3ErrorMsg(pParse, "cannot use window functions in recursive queries");
|
||||
+ return;
|
||||
+ }
|
||||
+#endif
|
||||
+
|
||||
/* Obtain authorization to do a recursive query */
|
||||
if( sqlite3AuthCheck(pParse, SQLITE_RECURSIVE, 0, 0, 0) ) return;
|
||||
|
||||
--- /test/with1.test
|
||||
+++ /test/with1.test
|
||||
@@ -865,6 +865,27 @@
|
||||
SELECT * FROM i;
|
||||
} {1 {recursive aggregate queries not supported}}
|
||||
|
||||
+# Or window-function recursive queries. Ticket e8275b41.
|
||||
+#
|
||||
+ifcapable windowfunc {
|
||||
+ do_catchsql_test 16.2 {
|
||||
+ WITH RECURSIVE
|
||||
+ i(x) AS (VALUES(1) UNION SELECT count(*) OVER () FROM i)
|
||||
+ SELECT * FROM i;
|
||||
+ } {1 {cannot use window functions in recursive queries}}
|
||||
+ do_catchsql_test 16.3 {
|
||||
+ WITH RECURSIVE
|
||||
+ t(id, parent) AS (VALUES(1,2)),
|
||||
+ q(id, parent, rn) AS (
|
||||
+ VALUES(1,2,3)
|
||||
+ UNION ALL
|
||||
+ SELECT t.*, ROW_NUMBER() OVER (ORDER BY t.id) AS rn
|
||||
+ FROM q JOIN t ON t.parent = q.id
|
||||
+ )
|
||||
+ SELECT * FROM q;
|
||||
+ } {1 {cannot use window functions in recursive queries}}
|
||||
+}
|
||||
+
|
||||
#-------------------------------------------------------------------------
|
||||
do_execsql_test 17.1 {
|
||||
WITH x(a) AS (
|
@ -0,0 +1,70 @@
|
||||
https://sqlite.org/src/info/d04b2013b5436430
|
||||
|
||||
--- /test/like3.test
|
||||
+++ /test/like3.test
|
||||
@@ -130,12 +130,14 @@
|
||||
do_execsql_test like3-5.110 {
|
||||
SELECT x FROM t5a WHERE x LIKE '/a%';
|
||||
} {/abc}
|
||||
+ifcapable !icu {
|
||||
do_eqp_test like3-5.111 {
|
||||
SELECT x FROM t5a WHERE x LIKE '/a%';
|
||||
} {
|
||||
QUERY PLAN
|
||||
`--SEARCH TABLE t5a USING COVERING INDEX sqlite_autoindex_t5a_1 (x>? AND x<?)
|
||||
}
|
||||
+}
|
||||
do_execsql_test like3-5.120 {
|
||||
SELECT x FROM t5a WHERE x LIKE '^12%' ESCAPE '^';
|
||||
} {123}
|
||||
--- /test/window6.test
|
||||
+++ /test/window6.test
|
||||
@@ -147,17 +147,17 @@
|
||||
#-------------------------------------------------------------------------
|
||||
#
|
||||
|
||||
-do_execsql_test 6.0 {
|
||||
- SELECT LIKE('!', '', '!') x WHERE x;
|
||||
-} {}
|
||||
-
|
||||
-do_execsql_test 6.1 {
|
||||
- SELECT LIKE("!","","!")""WHeRE"";
|
||||
-} {}
|
||||
-
|
||||
-do_catchsql_test 6.2 {
|
||||
- SELECT LIKE("!","","!")""window"";
|
||||
-} {1 {near "window": syntax error}}
|
||||
+ifcapable !icu {
|
||||
+ do_execsql_test 6.0 {
|
||||
+ SELECT LIKE('!', '', '!') x WHERE x;
|
||||
+ } {}
|
||||
+ do_execsql_test 6.1 {
|
||||
+ SELECT LIKE("!","","!")""WHeRE"";
|
||||
+ } {}
|
||||
+ do_catchsql_test 6.2 {
|
||||
+ SELECT LIKE("!","","!")""window"";
|
||||
+ } {1 {near "window": syntax error}}
|
||||
+}
|
||||
|
||||
reset_db
|
||||
do_execsql_test 7.0 {
|
||||
@@ -166,9 +166,11 @@
|
||||
INSERT INTO t1 VALUES('');
|
||||
}
|
||||
|
||||
-do_execsql_test 7.1 {
|
||||
- SELECT count(*) FROM t1 WHERE x LIKE '!' ESCAPE '!';
|
||||
-} {0}
|
||||
+ifcapable !icu {
|
||||
+ do_execsql_test 7.1 {
|
||||
+ SELECT count(*) FROM t1 WHERE x LIKE '!' ESCAPE '!';
|
||||
+ } {0}
|
||||
+}
|
||||
|
||||
#-------------------------------------------------------------------------
|
||||
#
|
||||
@@ -336,4 +338,3 @@
|
||||
}
|
||||
|
||||
finish_test
|
||||
-
|
@ -0,0 +1,19 @@
|
||||
https://sqlite.org/src/info/e8275b415a2f03bee
|
||||
https://sqlite.org/src/info/7fc2994434c7d9ed
|
||||
|
||||
--- /sqlite3.c
|
||||
+++ /sqlite3.c
|
||||
@@ -125441,6 +125441,13 @@
|
||||
Expr *pLimit; /* Saved LIMIT and OFFSET */
|
||||
int regLimit, regOffset; /* Registers used by LIMIT and OFFSET */
|
||||
|
||||
+#ifndef SQLITE_OMIT_WINDOWFUNC
|
||||
+ if( p->pWin ){
|
||||
+ sqlite3ErrorMsg(pParse, "cannot use window functions in recursive queries");
|
||||
+ return;
|
||||
+ }
|
||||
+#endif
|
||||
+
|
||||
/* Obtain authorization to do a recursive query */
|
||||
if( sqlite3AuthCheck(pParse, SQLITE_RECURSIVE, 0, 0, 0) ) return;
|
||||
|
@ -0,0 +1,322 @@
|
||||
# Copyright 1999-2018 Arfrever Frehtes Taifersar Arahesis and others
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI="7"
|
||||
|
||||
inherit autotools flag-o-matic multilib-minimal toolchain-funcs
|
||||
|
||||
SRC_PV="$(printf "%u%02u%02u%02u" $(ver_rs 1- " "))"
|
||||
DOC_PV="${SRC_PV}"
|
||||
# DOC_PV="$(printf "%u%02u%02u00" $(ver_rs 1-3 " "))"
|
||||
|
||||
DESCRIPTION="SQL database engine"
|
||||
HOMEPAGE="https://sqlite.org/"
|
||||
SRC_URI="doc? ( https://sqlite.org/2018/${PN}-doc-${DOC_PV}.zip )
|
||||
tcl? ( https://sqlite.org/2018/${PN}-src-${SRC_PV}.zip )
|
||||
test? ( https://sqlite.org/2018/${PN}-src-${SRC_PV}.zip )
|
||||
tools? ( https://sqlite.org/2018/${PN}-src-${SRC_PV}.zip )
|
||||
!tcl? ( !test? ( !tools? ( https://sqlite.org/2018/${PN}-autoconf-${SRC_PV}.tar.gz ) ) )"
|
||||
|
||||
LICENSE="public-domain"
|
||||
SLOT="3"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~x64-cygwin ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
|
||||
IUSE="debug doc icu +readline secure-delete static-libs tcl test tools"
|
||||
RESTRICT="!test? ( test )"
|
||||
|
||||
BDEPEND="doc? ( app-arch/unzip )
|
||||
tcl? (
|
||||
app-arch/unzip
|
||||
>=dev-lang/tcl-8.6:0
|
||||
)
|
||||
test? (
|
||||
app-arch/unzip
|
||||
>=dev-lang/tcl-8.6:0
|
||||
)
|
||||
tools? (
|
||||
app-arch/unzip
|
||||
>=dev-lang/tcl-8.6:0
|
||||
)"
|
||||
RDEPEND="sys-libs/zlib:0=[${MULTILIB_USEDEP}]
|
||||
icu? ( dev-libs/icu:0=[${MULTILIB_USEDEP}] )
|
||||
readline? ( sys-libs/readline:0=[${MULTILIB_USEDEP}] )
|
||||
tcl? ( dev-lang/tcl:0=[${MULTILIB_USEDEP}] )
|
||||
tools? ( dev-lang/tcl:0=[${MULTILIB_USEDEP}] )"
|
||||
DEPEND="${RDEPEND}
|
||||
test? ( >=dev-lang/tcl-8.6:0[${MULTILIB_USEDEP}] )"
|
||||
|
||||
full_archive() {
|
||||
use tcl || use test || use tools
|
||||
}
|
||||
|
||||
pkg_setup() {
|
||||
if full_archive; then
|
||||
S="${WORKDIR}/${PN}-src-${SRC_PV}"
|
||||
else
|
||||
S="${WORKDIR}/${PN}-autoconf-${SRC_PV}"
|
||||
fi
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
if full_archive; then
|
||||
eapply "${FILESDIR}/${PN}-3.25.0-full_archive-build.patch"
|
||||
eapply "${FILESDIR}/${PN}-3.25.2-full_archive-disallow_window_functions_in_recursive_queries.patch"
|
||||
eapply "${FILESDIR}/${PN}-3.25.2-full_archive-tests.patch"
|
||||
|
||||
eapply_user
|
||||
|
||||
# Fix AC_CHECK_FUNCS.
|
||||
# https://mailinglists.sqlite.org/cgi-bin/mailman/private/sqlite-dev/2016-March/002762.html
|
||||
sed -e "s/AC_CHECK_FUNCS(.*)/AC_CHECK_FUNCS([fdatasync fullfsync gmtime_r isnan localtime_r localtime_s malloc_usable_size posix_fallocate pread pread64 pwrite pwrite64 strchrnul usleep utime])/" -i configure.ac || die "sed failed"
|
||||
else
|
||||
eapply "${FILESDIR}/${PN}-3.25.0-nonfull_archive-build.patch"
|
||||
eapply "${FILESDIR}/${PN}-3.25.2-nonfull_archive-disallow_window_functions_in_recursive_queries.patch"
|
||||
|
||||
eapply_user
|
||||
|
||||
# Fix AC_CHECK_FUNCS.
|
||||
# https://mailinglists.sqlite.org/cgi-bin/mailman/private/sqlite-dev/2016-March/002762.html
|
||||
sed \
|
||||
-e "s/AC_CHECK_FUNCS(\[fdatasync.*/AC_CHECK_FUNCS([fdatasync fullfsync gmtime_r isnan localtime_r localtime_s malloc_usable_size posix_fallocate pread pread64 pwrite pwrite64 strchrnul usleep utime])/" \
|
||||
-e "/AC_CHECK_FUNCS(posix_fallocate)/d" \
|
||||
-i configure.ac || die "sed failed"
|
||||
fi
|
||||
|
||||
eautoreconf
|
||||
|
||||
multilib_copy_sources
|
||||
}
|
||||
|
||||
multilib_src_configure() {
|
||||
local CPPFLAGS="${CPPFLAGS}" CFLAGS="${CFLAGS}" options=()
|
||||
|
||||
options+=(
|
||||
--enable-$(full_archive && echo load-extension || echo dynamic-extensions)
|
||||
--enable-threadsafe
|
||||
)
|
||||
if ! full_archive; then
|
||||
options+=(--disable-static-shell)
|
||||
fi
|
||||
|
||||
# Support detection of misuse of SQLite API.
|
||||
# https://sqlite.org/compile.html#enable_api_armor
|
||||
append-cppflags -DSQLITE_ENABLE_API_ARMOR
|
||||
|
||||
# Support column metadata functions.
|
||||
# https://sqlite.org/c3ref/column_database_name.html
|
||||
append-cppflags -DSQLITE_ENABLE_COLUMN_METADATA
|
||||
|
||||
# Support sqlite_dbpage virtual table.
|
||||
# https://sqlite.org/compile.html#enable_dbpage_vtab
|
||||
append-cppflags -DSQLITE_ENABLE_DBPAGE_VTAB
|
||||
|
||||
# Support dbstat virtual table.
|
||||
# https://sqlite.org/dbstat.html
|
||||
append-cppflags -DSQLITE_ENABLE_DBSTAT_VTAB
|
||||
|
||||
# Support sqlite3_serialize() and sqlite3_deserialize() functions.
|
||||
# https://sqlite.org/compile.html#enable_deserialize
|
||||
# https://sqlite.org/c3ref/serialize.html
|
||||
# https://sqlite.org/c3ref/deserialize.html
|
||||
append-cppflags -DSQLITE_ENABLE_DESERIALIZE
|
||||
|
||||
# Support comments in output of EXPLAIN.
|
||||
# https://sqlite.org/compile.html#enable_explain_comments
|
||||
append-cppflags -DSQLITE_ENABLE_EXPLAIN_COMMENTS
|
||||
|
||||
# Support Full-Text Search versions 3, 4 and 5.
|
||||
# https://sqlite.org/fts3.html
|
||||
# https://sqlite.org/fts5.html
|
||||
append-cppflags -DSQLITE_ENABLE_FTS3 -DSQLITE_ENABLE_FTS3_PARENTHESIS -DSQLITE_ENABLE_FTS4
|
||||
options+=(--enable-fts5)
|
||||
|
||||
# Support hidden columns.
|
||||
append-cppflags -DSQLITE_ENABLE_HIDDEN_COLUMNS
|
||||
|
||||
# Support JSON1 extension.
|
||||
# https://sqlite.org/json1.html
|
||||
append-cppflags -DSQLITE_ENABLE_JSON1
|
||||
|
||||
# Support memsys5 memory allocator.
|
||||
# https://sqlite.org/malloc.html#memsys5
|
||||
append-cppflags -DSQLITE_ENABLE_MEMSYS5
|
||||
|
||||
# Support sqlite_offset() function.
|
||||
# https://sqlite.org/lang_corefunc.html#sqlite_offset
|
||||
append-cppflags -DSQLITE_ENABLE_OFFSET_SQL_FUNC
|
||||
|
||||
# Support pre-update hook functions.
|
||||
# https://sqlite.org/c3ref/preupdate_count.html
|
||||
append-cppflags -DSQLITE_ENABLE_PREUPDATE_HOOK
|
||||
|
||||
# Support Resumable Bulk Update extension.
|
||||
# https://sqlite.org/rbu.html
|
||||
append-cppflags -DSQLITE_ENABLE_RBU
|
||||
|
||||
# Support R*Trees.
|
||||
# https://sqlite.org/rtree.html
|
||||
# https://sqlite.org/geopoly.html
|
||||
append-cppflags -DSQLITE_ENABLE_RTREE -DSQLITE_ENABLE_GEOPOLY
|
||||
|
||||
# Support scan status functions.
|
||||
# https://sqlite.org/c3ref/stmt_scanstatus.html
|
||||
# https://sqlite.org/c3ref/stmt_scanstatus_reset.html
|
||||
append-cppflags -DSQLITE_ENABLE_STMT_SCANSTATUS
|
||||
|
||||
# Support sqlite_stmt virtual table.
|
||||
# https://sqlite.org/stmt.html
|
||||
append-cppflags -DSQLITE_ENABLE_STMTVTAB
|
||||
|
||||
# Support Session extension.
|
||||
# https://sqlite.org/sessionintro.html
|
||||
options+=(--enable-session)
|
||||
|
||||
# Support unknown() function.
|
||||
# https://sqlite.org/compile.html#enable_unknown_sql_function
|
||||
append-cppflags -DSQLITE_ENABLE_UNKNOWN_SQL_FUNCTION
|
||||
|
||||
# Support unlock notification.
|
||||
# https://sqlite.org/unlock_notify.html
|
||||
append-cppflags -DSQLITE_ENABLE_UNLOCK_NOTIFY
|
||||
|
||||
# Support LIMIT and ORDER BY clauses on DELETE and UPDATE statements.
|
||||
# https://sqlite.org/compile.html#enable_update_delete_limit
|
||||
append-cppflags -DSQLITE_ENABLE_UPDATE_DELETE_LIMIT
|
||||
|
||||
# Support PRAGMA function_list, PRAGMA module_list and PRAGMA pragma_list statements.
|
||||
# https://sqlite.org/pragma.html#pragma_function_list
|
||||
# https://sqlite.org/pragma.html#pragma_module_list
|
||||
# https://sqlite.org/pragma.html#pragma_pragma_list
|
||||
append-cppflags -DSQLITE_INTROSPECTION_PRAGMAS
|
||||
|
||||
# Support soundex() function.
|
||||
# https://sqlite.org/lang_corefunc.html#soundex
|
||||
append-cppflags -DSQLITE_SOUNDEX
|
||||
|
||||
# Support URI filenames.
|
||||
# https://sqlite.org/uri.html
|
||||
append-cppflags -DSQLITE_USE_URI
|
||||
|
||||
# debug USE flag.
|
||||
if full_archive; then
|
||||
options+=($(use_enable debug))
|
||||
else
|
||||
if use debug; then
|
||||
append-cppflags -DSQLITE_DEBUG
|
||||
else
|
||||
append-cppflags -DNDEBUG
|
||||
fi
|
||||
fi
|
||||
|
||||
# icu USE flag.
|
||||
if use icu; then
|
||||
# Support ICU extension.
|
||||
# https://sqlite.org/compile.html#enable_icu
|
||||
append-cppflags -DSQLITE_ENABLE_ICU
|
||||
if full_archive; then
|
||||
sed -e "s/^TLIBS = @LIBS@/& -licui18n -licuuc/" -i Makefile.in || die "sed failed"
|
||||
else
|
||||
sed -e "s/^LIBS = @LIBS@/& -licui18n -licuuc/" -i Makefile.in || die "sed failed"
|
||||
fi
|
||||
fi
|
||||
|
||||
# readline USE flag.
|
||||
options+=(
|
||||
--disable-editline
|
||||
$(use_enable readline)
|
||||
)
|
||||
if full_archive && use readline; then
|
||||
options+=(--with-readline-inc="-I${EPREFIX}/usr/include/readline")
|
||||
fi
|
||||
|
||||
# secure-delete USE flag.
|
||||
if use secure-delete; then
|
||||
# Enable secure_delete pragma by default.
|
||||
# https://sqlite.org/pragma.html#pragma_secure_delete
|
||||
append-cppflags -DSQLITE_SECURE_DELETE
|
||||
fi
|
||||
|
||||
# static-libs USE flag.
|
||||
options+=($(use_enable static-libs static))
|
||||
|
||||
# tcl, test, tools USE flags.
|
||||
if full_archive; then
|
||||
options+=(--enable-tcl)
|
||||
fi
|
||||
|
||||
if [[ "${CHOST}" == *-mint* ]]; then
|
||||
append-cppflags -DSQLITE_OMIT_WAL
|
||||
fi
|
||||
|
||||
if [[ "${ABI}" == "x86" ]]; then
|
||||
if $(tc-getCC) ${CPPFLAGS} ${CFLAGS} -E -P -dM - < /dev/null 2> /dev/null | grep -q "^#define __SSE__ 1$"; then
|
||||
append-cflags -mfpmath=sse
|
||||
else
|
||||
append-cflags -ffloat-store
|
||||
fi
|
||||
fi
|
||||
|
||||
econf "${options[@]}"
|
||||
}
|
||||
|
||||
multilib_src_compile() {
|
||||
emake HAVE_TCL="$(usex tcl 1 "")" TCLLIBDIR="${EPREFIX}/usr/$(get_libdir)/${P}"
|
||||
|
||||
if use tools && multilib_is_native_abi; then
|
||||
emake changeset dbdump dbhash rbu scrub showdb showjournal showshm showstat4 showwal sqldiff sqlite3_analyzer sqlite3_checker sqlite3_expert sqltclsh
|
||||
fi
|
||||
}
|
||||
|
||||
multilib_src_test() {
|
||||
if [[ "${EUID}" -eq 0 ]]; then
|
||||
ewarn "Skipping tests due to root permissions"
|
||||
return
|
||||
fi
|
||||
|
||||
emake HAVE_TCL="$(usex tcl 1 "")" $(use debug && echo fulltest || echo test)
|
||||
}
|
||||
|
||||
multilib_src_install() {
|
||||
emake DESTDIR="${D}" HAVE_TCL="$(usex tcl 1 "")" TCLLIBDIR="${EPREFIX}/usr/$(get_libdir)/${P}" install
|
||||
|
||||
if use tools && multilib_is_native_abi; then
|
||||
install_tool() {
|
||||
if [[ -f ".libs/${1}" ]]; then
|
||||
newbin ".libs/${1}" "${2}"
|
||||
else
|
||||
newbin "${1}" "${2}"
|
||||
fi
|
||||
}
|
||||
|
||||
install_tool changeset sqlite3-changeset
|
||||
install_tool dbdump sqlite3-db-dump
|
||||
install_tool dbhash sqlite3-db-hash
|
||||
install_tool rbu sqlite3-rbu
|
||||
install_tool scrub sqlite3-scrub
|
||||
install_tool showdb sqlite3-show-db
|
||||
install_tool showjournal sqlite3-show-journal
|
||||
install_tool showshm sqlite3-show-shm
|
||||
install_tool showstat4 sqlite3-show-stat4
|
||||
install_tool showwal sqlite3-show-wal
|
||||
install_tool sqldiff sqlite3-diff
|
||||
install_tool sqlite3_analyzer sqlite3-analyzer
|
||||
install_tool sqlite3_checker sqlite3-checker
|
||||
install_tool sqlite3_expert sqlite3-expert
|
||||
install_tool sqltclsh sqlite3-tclsh
|
||||
|
||||
unset -f install_tool
|
||||
fi
|
||||
}
|
||||
|
||||
multilib_src_install_all() {
|
||||
find "${D}" -name "*.la" -delete || die
|
||||
|
||||
doman sqlite3.1
|
||||
|
||||
if use doc; then
|
||||
rm "${WORKDIR}/${PN}-doc-${DOC_PV}/"*.{db,txt}
|
||||
(
|
||||
docinto html
|
||||
dodoc -r "${WORKDIR}/${PN}-doc-${DOC_PV}/"*
|
||||
)
|
||||
fi
|
||||
}
|
Binary file not shown.
@ -1,11 +1,9 @@
|
||||
DIST protobuf-3.4.1.tar.gz 4490100 BLAKE2B e2bc1ef2ee1a0af44830b3c65a6c9e73883fe6ec0d07f6a6136f5564f0e85306005440ca6f8c4eb834c7c70f909792c9e2457a761f10f95431981263a9acd7a3 SHA512 471e52198fa878a79183dc8fbc39d9c65239be4d9dff799e12281ee9b1af61a427584534b1baae1773bc6e4c86467f89ca2e7911a21effd86bc5f40cc7d94c34
|
||||
DIST protobuf-3.5.1.1.tar.gz 4584489 BLAKE2B 995ee2f06a6358e9935b488269ee50f0dccede417c1757828b0108fbe8c67034301f3a9cb87517430acd9838ae71bb677f4edd8b59b2418f99c15d8ea3d33591 SHA512 f25ecf772facc8efd196b7c06012ce9ec24152b2c0cde38ed2e29ecded8f534221b008e649f4cbd991436ad3436130cd2e31d51e75019d08240d518111fb4496
|
||||
DIST protobuf-3.5.2.tar.gz 4584659 BLAKE2B f582212169d802a5844574eb900c9f8cbb343b7e73f2074e5ff0bfc544ebd13f4bc2b78271fb70f4465d78fdc39972ed68339f453c0d3ffe98d8564fbf520544 SHA512 09d10cf0c07a0ba249428bbf20f5dbed840965fa06b3c09682f286a4dee9d84bb96f3b5b50e993d48ef1f20440531255ce7d0e60a648bf3fe536a5f2b0b74181
|
||||
DIST protobuf-3.6.0.1.tar.gz 4483964 BLAKE2B 8afc1e4f4a6eba0eb453fa7cbee8e8ab4986ab9dda39a0005de9d07ec4bd4fd27a5af4ab359b139b4117a5da580be6da3387295266625ee8cc7ec9421c5c0235 SHA512 63cd799d5d6edbb05a87bc07992271c5bdb9595366d698b4dc5476cc89dc278d1c43186b9e56340958aefea2ce23e15a9c3a550158414add868b56e789ceafe4
|
||||
DIST protobuf-3.6.1.tar.gz 4485582 BLAKE2B 546c49759df784018459809b9db692c5c94aef5d717183af5cd9edd96b4c658e759f23950cdcd5dddceaaad06ea1de2a2357b9fa8c496ed5d538fc5920174da0 SHA512 1bc175d24b49de1b1e41eaf39598194e583afffb924c86c8d2e569d935af21874be76b2cbd4d9655a1d38bac3d4cd811de88bc2c72d81bad79115e69e5b0d839
|
||||
EBUILD protobuf-java-3.4.1.ebuild 2083 BLAKE2B 0d8ddca861124a5d2869398b7c955338931baba25b478695deb569b224bde7d4b92d8e53a4871b78ef57e4f3d352ba7f03107008799a1e3a21109b49a35763b7 SHA512 2de4bb6979c348fa30528b0bf9c99dae2952d43c3b4485afed0068dbcf9803ab59a21f89b0a0f5bc8d3b6a0024ac85a856e97ea2e00cda93985705746cc9fb7f
|
||||
EBUILD protobuf-java-3.5.1.1.ebuild 2080 BLAKE2B 0e51dd999d692bfa8a663821c5e1d6bccb031e350e4da42208a99114c7154dca30aae4076e57db0b25761d0c1233c0e71904c6be171cefc19892a68856f2502b SHA512 8f203866faa74f44e8e6209d787f34c84fb0dc8847bdda30bbec0171a5b8133eff54ce3609bc41cc972a5a1848a36fa3fa53561836da3744db66b6d517ac9013
|
||||
EBUILD protobuf-java-3.5.2.ebuild 1799 BLAKE2B 9823ead3f3d611217a070907bae7d62a0e10b68a617c39af629ef48c1f83f840cf48588b21d6eca40e229f9e42ff05e2686ca973f4bdbd51a856612adae6a144 SHA512 c8df2c790f1584389c9d5a24d73c7ee0211e6c5b99d189fbfe483465bfdcd8a7e902c4025ace00bf59f7326fcec6f4c70b4c004f6bf656a6b260e24d61300a05
|
||||
EBUILD protobuf-java-3.6.0.1.ebuild 1097 BLAKE2B 2daec7aa9712be1a166a5281821adb1c29437824c28d6f79574c6ee7005c7e0576b0b39a86a661beedb3144b411309226ac052ada72c172613ced1480cf4bd7e SHA512 2deda95ada705bd49c281e839138c474c5183b67d12c9197da3772e3346d7d2637ab861a4000d0362b5e112c8728c9ac9251ffda031ee32e9dcaacf904267cc2
|
||||
EBUILD protobuf-java-3.6.1.ebuild 1097 BLAKE2B 03a214f5716dacf251b0b2827c26ed5c37f75d12e202d01a8f75fb26774245d36aa59ee36ca40a5ebc3be0af60a7406d3e0161ea3eb51e3062dfe85b657f0af3 SHA512 dd535ed4039aa48be10cc427005a3eca8d54434c33242c4e6bfd8e8f56a6310aa58980731cb0727b08909919bf38cfab776aeedf5454305a2ccfcd0fb0a65e2a
|
||||
MISC metadata.xml 796 BLAKE2B 730596798d9434732683c07bf8f4df861e3a2a4f0b681b642f6226e749729cbba260623c3d116e0dcc059fcce12df365e7ef1890139a570de37bf5d994d9035d SHA512 10479327785c7afbb86288465782b3c4af5b8901a5d63c7989bdebdecdda2ea44990b99cf74e0a1ed87d686e74991b65237a1e3e04b6b87bee510c70e810503b
|
||||
EBUILD protobuf-java-3.5.1.1.ebuild 2095 BLAKE2B 9cb63175cfb02d00fa2e9273aba56bc3fe640d5a485af2746dde34505d6ec9317617dc41e7da0f7dba3f728673a9a846363f61889bb4c4fb46916852623435a5 SHA512 1cc3f361b4cb240b80cd3a5b43b7e3f8d95b08152b33e09aeb7a96a07683d621384468730cdbf1b99f24dd6937aef3745fe3678e0b57ba9f314b6a21fa2139ec
|
||||
EBUILD protobuf-java-3.5.2.ebuild 1814 BLAKE2B fd690cc2a8ecbf5d568ea3d20cd5c494dc97f75c3f61b3c506e2e39168bb5e138e0ffce2f1d3ae846e13c535372dc4638d32b356664849248d3b2e948dce5c4d SHA512 df61e203370b90295a3b48eea64c80fa53e9cabf51730e2c49db2520017833961560d7895f80060f08807089d3df54220c74df852807fa1d07efdca3b84991d4
|
||||
EBUILD protobuf-java-3.6.0.1.ebuild 1112 BLAKE2B ed95623a91d20e3c8e2ecbb69c8c52421441c0eed3a3f36bcf84486b98cc67cccab53da1f83f3299b071cd0332f59461af952d29be82dd9f65d58fb68ab47ef7 SHA512 2746cfa9ac7a844aac943cf6ea5e0b09b5544f0be8a2ef46bdd9d46a3e8261892d0cd153e668bffd5b7babe31601ec3338c81f79de3788353f48921ae2890f2b
|
||||
EBUILD protobuf-java-3.6.1.ebuild 1112 BLAKE2B f8ff861b086b130132f712a85066b9c3b05f9ed8673bd8e8787a598cc9bd78818b586255f0cddec1a5b2d1cf846d84ab35a5a78ce4fc6e940ed757e397579b91 SHA512 39aa4611274b54b2875eb8d8ff196c80362cbeb484bdfc4b0c058a179dba7451a7c6938aa01c4f187b018b3f3c3b3f49ace697c6960bcd99df04018b2651dd24
|
||||
MISC metadata.xml 805 BLAKE2B d90fd4afcd89ea87b592be42fa34d1279f2fc28b24c3891c2065b909b197927014c3e96d6cc88797b5cb9ccb087efdb2f3b31bb436bde3e7d6858cdacb714c3e SHA512 4bbb4b673edf832e0e5bd985d3d11e813d8512c31e79441c8b0321b4d40f89bf0a15b5bbcf12f3ef9294fa831c35b7dc518be1a86b2fb87eab173a6b2bccf476
|
||||
|
@ -1,66 +0,0 @@
|
||||
# Copyright 1999-2017 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI="6"
|
||||
JAVA_PKG_IUSE="doc source"
|
||||
|
||||
inherit java-pkg-2 java-pkg-simple
|
||||
|
||||
DESCRIPTION="Google's Protocol Buffers - Java bindings"
|
||||
HOMEPAGE="https://developers.google.com/protocol-buffers/ https://github.com/google/protobuf"
|
||||
SRC_URI="https://github.com/google/protobuf/archive/v${PV}.tar.gz -> protobuf-${PV}.tar.gz"
|
||||
|
||||
LICENSE="BSD"
|
||||
SLOT="0/14"
|
||||
KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~sh ~x86 ~amd64-linux ~x86-linux ~x64-macos ~x86-macos"
|
||||
IUSE="nano"
|
||||
|
||||
# Protobuf is only a build-time dep, but depends on the exact same version
|
||||
# (excluding revision), since we are using the same tarball.
|
||||
# But probably same subslot is sufficient.
|
||||
DEPEND=">=virtual/jdk-1.7
|
||||
~dev-libs/protobuf-${PV}"
|
||||
|
||||
RDEPEND=">=virtual/jre-1.7
|
||||
!<dev-libs/protobuf-3[java(-)]"
|
||||
|
||||
S="${WORKDIR}/protobuf-${PV}"
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
java-pkg-2_src_prepare
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
pushd "${S}/java" >/dev/null || die
|
||||
einfo "Compiling Java library ..."
|
||||
"${EPREFIX}"/usr/bin/protoc --java_out=core/src/main/java -I../src ../src/google/protobuf/descriptor.proto || die
|
||||
JAVA_SRC_DIR="${S}/java/core/src/main/java"
|
||||
JAVA_JAR_FILENAME="protobuf.jar"
|
||||
java-pkg-simple_src_compile
|
||||
popd >/dev/null || die
|
||||
if use nano; then
|
||||
einfo "Compiling Java Nano library ..."
|
||||
pushd "${S}/javanano" >/dev/null || die
|
||||
"${EPREFIX}"/usr/bin/protoc --java_out=src/main/java -I../src ../src/google/protobuf/descriptor.proto || die
|
||||
JAVA_SRC_DIR="${S}/javanano/src/main/java"
|
||||
JAVA_GENTOO_CLASSPATH_EXTRA="${S}/java/core/src/main/java/"
|
||||
JAVA_JAR_FILENAME="protobuf-nano.jar"
|
||||
java-pkg-simple_src_compile
|
||||
popd >/dev/null || die
|
||||
fi
|
||||
}
|
||||
|
||||
src_install() {
|
||||
JAVA_JAR_FILENAME="${S}/java/protobuf.jar"
|
||||
JAVA_SRC_DIR="${S}/java/core/src/main/java"
|
||||
if use nano; then
|
||||
JAVA_JAR_FILENAME="${JAVA_JAR_FILENAME} ${S}/javanano/protobuf-nano.jar"
|
||||
JAVA_SRC_DIR="${JAVA_SRC_DIR} ${S}/javanano/src/main/java"
|
||||
fi
|
||||
mv "${S}/java/target" . || die
|
||||
if use nano; then
|
||||
cp -Rvf "${S}/javanano/target" . || die
|
||||
fi
|
||||
java-pkg-simple_src_install
|
||||
}
|
Binary file not shown.
Binary file not shown.
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in new issue