Sync with portage [Fri Jan 24 09:46:04 MSK 2020].

develop 1573
root 4 years ago
parent 9c04942a1f
commit e47ab4fc18

Binary file not shown.

Binary file not shown.

@ -5,3 +5,4 @@ DIST fluentd-1.3.3.gem 438784 BLAKE2B 186aa4af59707c6a68a6f82b94b233e3f52eb11745
DIST fluentd-1.4.0.gem 440832 BLAKE2B 8f25cc6ca4ceb164156fe3ff3a14a18109f0943587cc5cad49185ee442e3cf381fa6859e36c8df94241f8a9922102fd479e39b08c394c46d6edc7bcf58abecee SHA512 e817cc128a29e5c30c40e08985f84d3a8e713cdcfd0e05af7d08d3b7dd5cb6810b85c455a3c425bd84775cdc060e74530dd264bf5fe354b5038c3a2d779d42c6
DIST fluentd-1.4.1.gem 442368 BLAKE2B fff0b5677a41637caa6ba3725797df7b1573c13ed9742cd125e89a5a8c1ac380c23d84c3f89e0c11ac109dc757c0bed93b8d79ce4c722a90d04c9a0bbd5d8887 SHA512 64bda77b818f2e35cf941b02119b08c9a52c03c8b94f7c2c5ab9c92e31010e296babe996cf400c41a3b34f92a16d577e81cbd6f204270b0a1d1370c6cfe83bfe
DIST fluentd-1.4.2.gem 443392 BLAKE2B 0aadec57268c69d45f4cf0e36be59e957b283f33f3dd6ac9bac0294c084b0e7d0e8fc28b1f12c3f5548dbcf6c1e562ff4a2c7f52bf7b0126fdafef102ba9562c SHA512 e67226a1e1fc6debda93b8efef9f19efb8eab7e0951a63ed646f2d01259f08d972c276aff8bf704acb64a10705460c4d68ac527cce1999707611cef79b4ae5cc
DIST fluentd-1.9.0.gem 500224 BLAKE2B c09fc4d40e931ef2dc669cac1358c3b15baf434b7920f9481644953986dd1c3d140c4f4f8b53dd46d5972207ca7b1cb355f7fc51830b1adbb275c82ea9a7b979 SHA512 145b14b77900b2c7e4b83923d0d06465c7c5fdbfcdf39d1ab0be31a91e9003da7086b02b5fe9b4367956d892aadd65ac3ee34cafdf4f746c630a306af245b69d

@ -0,0 +1,61 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
USE_RUBY="ruby23 ruby24 ruby25 ruby26"
RUBY_FAKEGEM_RECIPE_DOC="rdoc"
inherit ruby-fakegem user
DESCRIPTION="data collector and unified logging layer (project under CNCF)"
HOMEPAGE="https://www.fluentd.org"
LICENSE="Apache-2.0"
SLOT="0"
KEYWORDS="~amd64"
ruby_add_rdepend "
>=dev-ruby/coolio-1.4.5
>=dev-ruby/http_parser_rb-0.5.1
>=dev-ruby/msgpack-1.3.1
>=dev-ruby/serverengine-2.0.4
>=dev-ruby/sigdump-0.2.2
>=dev-ruby/strptime-0.2.2
>=dev-ruby/tzinfo-1.0
>=dev-ruby/yajl-ruby-1.0"
pkg_setup() {
enewgroup ${PN}
enewuser ${PN} -1 -1 -1 ${PN}
}
all_ruby_prepare() {
sed -i \
-e '/tzinfo-data/d' \
-e '/dig_rb/d' \
"${PN}".gemspec || die "'sed failed"
# Avoid test dependency on unpackaged oj
rm -f test/test_event_time.rb || die
}
all_ruby_install() {
all_fakegem_install
keepdir /var/log/fluentd
fowners fluentd:adm /var/log/fluentd
insinto /etc/fluent
doins fluent.conf
newconfd "${FILESDIR}"/${PN}.confd ${PN}
newinitd "${FILESDIR}"/${PN}.initd ${PN}
insinto /etc/logrotate.d
newins "${FILESDIR}"/${PN}.logrotate ${PN}
}
pkg_postinst() {
if [[ -z "${REPLACING_VERSIONS}" ]]; then
elog "A default configuration file has been installed in"
elog "${EROOT}/etc/fluent/fluent.conf. You will need to edit"
elog "this file to match your configuration."
fi
}

@ -1,5 +1,2 @@
DIST r10k-3.2.0.gem 206336 BLAKE2B badc840ec7e6793daf205f1352899fa909e9a922a353a52841809dc80fd03758a865e0cb8210e58bb5c25968207d537b3f19c1903fbb519c50b6af2dd27eb5fb SHA512 7ea00ec28ba631877d33fa8b00b25e1c69346b787499ec7b26118c16acecf6bd39fcdc4618af016ebf5b62850b6d984510f7e9153dd4e99771def299b7d0703d
DIST r10k-3.3.0.gem 206848 BLAKE2B 92fedb9871c6e22df3a3f8c4cf18feac1bf3ef51e2e67b3001c811bc81397eda71bc9da94ef860d6e39b989fd1c1a3b9dae402142496f17c4427ff2de62188fd SHA512 674c5c386885dd1476264d8bc047ddad0411b6344350662021ede8a5352e95fd50a72f62127b00bf6b2bc8e6b3835b017128788707610d510a64eee13b9f4d4f
DIST r10k-3.3.1.gem 208384 BLAKE2B 81e7de3d2fabd038240478ab7ace4fba181a4370544f964b438a6b96de34a741f653aff018ece21453b119ae6b12f06934cc82be8a6b78cd5a72277195a5fe81 SHA512 20f9c92fbabed82521d452f339d9d2fd8cc438cac1cc11385a6e2874a5d55fe6425ddfcd281d8e63ee043adec5fbbfba0c37ef0c6e15d498c64ba550740ccd6e
DIST r10k-3.3.2.gem 208384 BLAKE2B 8d5ce5d7fb2497b701fdf7cd0a742db7b221a2b327464b553b9dbd893ecfbda2498302fb14cda89df7030c6b48dfb048d23d5c271773a3974e75b115ad0e3c49 SHA512 ccc71c856f204aafe9f15b497c3881aaa3beff50c36647e06590cbbaebaed58514eb30a5d57bbee4ba071e3586083c0b07decbd68c859667e6eb6bb57a40aef5
DIST r10k-3.3.3.gem 208384 BLAKE2B 8c20a516c721970e4edb57160972dfa992d79a90794d7428f7083dee48f68ea87fdd6b182acd3df1ec9c8b50a2a72543d2ffb4b5361d6960fb46d021e3c2d592 SHA512 b1a407cd0bcafc9d7d15ff0d40f54d93d19be48032858aeb42955cdf14799fa75445f4ec462dd05a19cda972d155a0fc0be641d1998fd5e02c0ea5f1d971ea08

@ -1,44 +0,0 @@
# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
USE_RUBY="ruby24 ruby25 ruby26"
RUBY_FAKEGEM_RECIPE_TEST="rspec3"
RUBY_FAKEGEM_TASK_DOC=""
RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
inherit ruby-fakegem
DESCRIPTION="Puppet environment and module deployment"
HOMEPAGE="https://github.com/puppetlabs/r10k"
LICENSE="Apache-2.0"
SLOT="0"
KEYWORDS="~amd64"
IUSE="+git"
ruby_add_rdepend "
~dev-ruby/colored-1.2
~dev-ruby/cri-2.15.6
>=dev-ruby/gettext-setup-0.24:0
~dev-ruby/log4r-1.1.10
>=dev-ruby/multi_json-1.10:0
>=dev-ruby/puppet_forge-2.2.8
=dev-ruby/puppet_forge-2.2*
"
ruby_add_bdepend "test? (
dev-ruby/archive-tar-minitar
)"
RDEPEND="${RDEPEND} git? ( >=dev-vcs/git-1.6.6 )"
all_ruby_prepare() {
sed -i -e '/s.files/d' ${RUBY_FAKEGEM_GEMSPEC} || die
# Avoid specs for unpackaged rugget git provider
rm -rf spec/unit/git_spec.rb spec/unit/git/rugged || die
}

@ -1,43 +0,0 @@
# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
USE_RUBY="ruby24 ruby25 ruby26"
RUBY_FAKEGEM_RECIPE_DOC="none"
RUBY_FAKEGEM_RECIPE_TEST="rspec3"
RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
inherit ruby-fakegem
DESCRIPTION="Puppet environment and module deployment"
HOMEPAGE="https://github.com/puppetlabs/r10k"
LICENSE="Apache-2.0"
SLOT="0"
KEYWORDS="~amd64"
IUSE="+git"
ruby_add_rdepend "
~dev-ruby/colored-1.2
~dev-ruby/cri-2.15.6
>=dev-ruby/gettext-setup-0.24:0
~dev-ruby/log4r-1.1.10
>=dev-ruby/multi_json-1.10:0
=dev-ruby/puppet_forge-2.3*
"
ruby_add_bdepend "test? (
dev-ruby/archive-tar-minitar
)"
RDEPEND="${RDEPEND} git? ( >=dev-vcs/git-1.6.6 )"
all_ruby_prepare() {
sed -i -e '/s.files/d' ${RUBY_FAKEGEM_GEMSPEC} || die
# Avoid specs for unpackaged rugget git provider
rm -rf spec/unit/git_spec.rb spec/unit/git/rugged || die
}

@ -1,43 +0,0 @@
# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
USE_RUBY="ruby24 ruby25 ruby26"
RUBY_FAKEGEM_RECIPE_DOC="none"
RUBY_FAKEGEM_RECIPE_TEST="rspec3"
RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
inherit ruby-fakegem
DESCRIPTION="Puppet environment and module deployment"
HOMEPAGE="https://github.com/puppetlabs/r10k"
LICENSE="Apache-2.0"
SLOT="0"
KEYWORDS="~amd64"
IUSE="+git"
ruby_add_rdepend "
~dev-ruby/colored-1.2
~dev-ruby/cri-2.15.6
>=dev-ruby/gettext-setup-0.24:0
~dev-ruby/log4r-1.1.10
>=dev-ruby/multi_json-1.10:0
=dev-ruby/puppet_forge-2.3*
"
ruby_add_bdepend "test? (
dev-ruby/archive-tar-minitar
)"
RDEPEND="${RDEPEND} git? ( >=dev-vcs/git-1.6.6 )"
all_ruby_prepare() {
sed -i -e '/s.files/d' ${RUBY_FAKEGEM_GEMSPEC} || die
# Avoid specs for unpackaged rugget git provider
rm -rf spec/unit/git_spec.rb spec/unit/git/rugged || die
}

@ -1,2 +1,3 @@
DIST terraform-0.12.17.tar.gz 10508005 BLAKE2B facef6de57333586445ce8839c03ccd633fe9ac68619e384b71fff921afeaf260e01b8783d61e4cc04882aa644e8eb706b08c88216f093d85e0fd081363c4103 SHA512 6311fdbf6764e585126a1e177dc498634a799ba1a68ba98682e2be29d14b40c09d0a780555f10bbde0587445d31a1e0d9810226f9e6bd3fcb248428ceb864c87
DIST terraform-0.12.19.tar.gz 10526213 BLAKE2B 89acdb2e099532a922d49ac3d0049c522b7936817afb7836ebf643ef21fd35f3be495cde5a92ea93add144dada0f54de55b4b42a668bff08c9db789a1d4a77d1 SHA512 3acf327bdbaeddf6f13fc1a2a2335675dd3910137ef685224e7c1eafddf18d0aaa8c24aa3b1b5027b21905d2d87fbe3d49904e196c9881063d01670c4de3db66
DIST terraform-0.12.20.tar.gz 10383312 BLAKE2B c9e9c7e8328cfbeb533d12a2acee133cc049b06e9a30c9fdc5708c674c272af264ae34c8c850924ae08885237a2e4d6c55d43d92b350104c6afe66d2f50e31ec SHA512 df92422426e7ebaf2c3a6b953de9fc9fcb461f7227835e728bbccf5b796995d818a39817913d6010fadb8b3618710f77f50e36eb6ce4176e7312b68c7d7f7e96

@ -0,0 +1,45 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit golang-base go-module
DESCRIPTION="A tool for building, changing, and combining infrastructure safely"
HOMEPAGE="https://www.terraform.io/"
EGO_PN="github.com/hashicorp/${PN}"
SRC_URI="https://github.com/hashicorp/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="Apache-2.0 BSD-2 BSD-4 ECL-2.0 imagemagick ISC JSON MIT MIT-with-advertising MPL-2.0 unicode"
SLOT="0"
KEYWORDS="~amd64"
RESTRICT="test"
DOCS=( {README,CHANGELOG}.md )
src_prepare() {
default
# the sed command is necessary to generate tests outside of the
# default git root of `terraform', in our case the working dir
# is `work/$PN-$PV'
# sed -i -e "s/!=\s\+\"terraform\"/!=\ \"${P}\"/" \
# ./scripts/generate-plugins.go || die
}
src_compile() {
GOCACHE="${T}/go-cache" go build \
-work -o "bin/${PN}" ./ || die
}
src_install() {
dobin bin/terraform
einstalldocs
}
pkg_postinst() {
elog "If you would like to install shell completions please run:"
elog " terraform -install-autocomplete"
}

Binary file not shown.

@ -0,0 +1,11 @@
--- ./CPP/7zip/Archive/Wim/WimHandler.cpp 2016-06-11 11:08:06.000000000 +0300
+++ ./CPP/7zip/Archive/Wim/WimHandler.cpp.new 2020-01-22 09:36:59.671803569 +0300
@@ -298,7 +298,7 @@ STDMETHODIMP CHandler::GetArchivePropert
AString res;
- bool numMethods = 0;
+ int numMethods = 0;
for (unsigned i = 0; i < ARRAY_SIZE(k_Methods); i++)
{
if (methodMask & ((UInt32)1 << i))

@ -0,0 +1,168 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
WX_GTK_VER="3.0"
inherit toolchain-funcs wxwidgets
DESCRIPTION="Port of 7-Zip archiver for Unix"
HOMEPAGE="http://p7zip.sourceforge.net/"
SRC_URI="mirror://sourceforge/${PN}/${PN}_${PV}_src_all.tar.bz2"
LICENSE="LGPL-2.1 rar? ( unRAR )"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris"
IUSE="abi_x86_x32 doc kde +pch rar static wxwidgets"
REQUIRED_USE="kde? ( wxwidgets )"
RDEPEND="wxwidgets? ( x11-libs/wxGTK:${WX_GTK_VER}[X] )"
DEPEND="${RDEPEND}
abi_x86_x32? ( >=dev-lang/yasm-1.2.0-r1 )
amd64? ( dev-lang/yasm )
x86? ( dev-lang/nasm )"
S=${WORKDIR}/${PN}_${PV}
DOCS=( ChangeLog README TODO )
PATCHES=(
"${FILESDIR}"/${P}-darwin.patch
"${FILESDIR}"/CVE-2016-9296.patch
"${FILESDIR}"/CVE-2017-17969.patch
"${FILESDIR}"/CVE-2018-5996.patch
"${FILESDIR}"/CVE-2018-10115.patch
"${FILESDIR}"/WimHandler.cpp.patch
)
src_prepare() {
default
if ! use pch; then
sed "s:PRE_COMPILED_HEADER=StdAfx.h.gch:PRE_COMPILED_HEADER=:g" -i makefile.* || die
fi
sed \
-e 's|-m32 ||g' \
-e 's|-m64 ||g' \
-e 's|-pipe||g' \
-e "/[ALL|OPT]FLAGS/s|-s||;/OPTIMIZE/s|-s||" \
-e "/CFLAGS=/s|=|+=|" \
-e "/CXXFLAGS=/s|=|+=|" \
-i makefile* || die
# remove non-free RAR codec
if use rar; then
ewarn "Enabling nonfree RAR decompressor"
else
sed \
-e '/Rar/d' \
-e '/RAR/d' \
-i makefile* CPP/7zip/Bundles/Format7zFree/makefile || die
rm -rf CPP/7zip/Compress/Rar || die
fi
if use abi_x86_x32; then
sed -i -e "/^ASM=/s:amd64:x32:" makefile* || die
cp -f makefile.linux_amd64_asm makefile.machine || die
elif use amd64; then
cp -f makefile.linux_amd64_asm makefile.machine || die
elif use x86; then
cp -f makefile.linux_x86_asm_gcc_4.X makefile.machine || die
elif [[ ${CHOST} == *-darwin* ]] ; then
# Mac OS X needs this special makefile, because it has a non-GNU
# linker, it doesn't matter so much for bitwidth, for it doesn't
# do anything with it
cp -f makefile.macosx_llvm_64bits makefile.machine
# bundles have extension .bundle but don't die because USE=-rar
# removes the Rar directory
sed -i -e '/strcpy(name/s/\.so/.bundle/' \
CPP/Windows/DLL.cpp || die
sed -i -e '/^PROG=/s/\.so/.bundle/' \
CPP/7zip/Bundles/Format7zFree/makefile.list \
$(use rar && echo CPP/7zip/Compress/Rar/makefile.list) || die
elif use x86-fbsd; then
# FreeBSD needs this special makefile, because it hasn't -ldl
sed -e 's/-lc_r/-pthread/' makefile.freebsd > makefile.machine
fi
if use static; then
sed -i -e '/^LOCAL_LIBS=/s/LOCAL_LIBS=/&-static /' makefile.machine || die
fi
if use kde || use wxwidgets; then
need-wxwidgets unicode
einfo "Preparing dependency list"
emake CC=$(tc-getCC) CXX=$(tc-getCXX) depend
fi
}
src_compile() {
emake CC=$(tc-getCC) CXX=$(tc-getCXX) all3
if use kde || use wxwidgets; then
emake CC=$(tc-getCC) CXX=$(tc-getCXX) -- 7zG
# emake CC=$(tc-getCC) CXX=$(tc-getCXX) -- 7zFM
fi
}
src_test() {
emake test test_7z test_7zr
}
src_install() {
# this wrappers can not be symlinks, p7zip should be called with full path
make_wrapper 7zr "/usr/$(get_libdir)/${PN}/7zr"
make_wrapper 7za "/usr/$(get_libdir)/${PN}/7za"
make_wrapper 7z "/usr/$(get_libdir)/${PN}/7z"
if use kde || use wxwidgets; then
make_wrapper 7zG "/usr/$(get_libdir)/${PN}/7zG"
# make_wrapper 7zFM "/usr/$(get_libdir)/${PN}/7zFM"
# make_desktop_entry 7zFM "${PN} FM" ${PN} "GTK;Utility;Archiving;Compression"
dobin GUI/p7zipForFilemanager
exeinto /usr/$(get_libdir)/${PN}
# doexe bin/7z{G,FM}
doexe bin/7zG
insinto /usr/$(get_libdir)/${PN}
doins -r GUI/Lang
doins -r DOC/MANUAL
insinto /usr/share/icons/hicolor/16x16/apps/
newins GUI/p7zip_16_ok.png p7zip.png
if use kde; then
rm GUI/kde4/p7zip_compress.desktop || die
insinto /usr/share/kservices5/ServiceMenus
doins GUI/kde4/*.desktop
dodir /usr/share/kde4/services/ServiceMenus # drop these lines after konqueror:4/krusader:4 are gone
for item in "${ED}"/usr/share/kservices5/ServiceMenus/*.desktop; do
item="$(basename ${item})"
dosym ${EROOT}"/usr/share/kservices5/ServiceMenus/${item}" "/usr/share/kde4/services/ServiceMenus/${item}"
done
fi
fi
dobin contrib/gzip-like_CLI_wrapper_for_7z/p7zip
doman contrib/gzip-like_CLI_wrapper_for_7z/man1/p7zip.1
exeinto /usr/$(get_libdir)/${PN}
doexe bin/7z bin/7za bin/7zr bin/7zCon.sfx
doexe bin/*$(get_modname)
if use rar; then
exeinto /usr/$(get_libdir)/${PN}/Codecs/
doexe bin/Codecs/*$(get_modname)
fi
doman man1/7z.1 man1/7za.1 man1/7zr.1
if use doc; then
dodoc DOC/*.txt
docinto html
dodoc -r DOC/MANUAL/*
fi
}

Binary file not shown.

@ -1 +1,2 @@
DIST pdfcrack-0.16.tar.gz 34467 BLAKE2B 7eda8dae9cec3117f410f9ebbe6d536ca627c72b53693d4021f3faf104ed0439e05dda5848d1f18911544336c6303f9b061c373da9a0a275ecfa2c29ed425b76 SHA512 460113f28249d1ea1cefc6dac8ff22b33849ccff50f61830144e41eeec47c4b9113845bb955d26757adb0552d8c0dfa43b3f5666c1419afe4063037a1e1c933d
DIST pdfcrack-0.18.tar.gz 35145 BLAKE2B 05c1b5164c208ba34ffe2c4aadcebaa88d5a4058a8ef355df3346bda19b5e9f319abd714975d86e3b05ef70ec003f4e08b00d5b339ebd0ac0549f72884580547 SHA512 7d1624d835bcefff131745c75dc2ecafe63afdbf2c56568880804d5b7062a8eef27eebfedf340ab9d7e5770dd1a553d5d30b7ea5bca63a317deb40e0deed35a2

@ -1,7 +1,10 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<!-- maintainer-needed -->
<maintainer type="person">
<email>bkohler@gentoo.org</email>
<name>Ben Kohler</name>
</maintainer>
<upstream>
<remote-id type="sourceforge">pdfcrack</remote-id>
</upstream>

@ -0,0 +1,27 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit toolchain-funcs
DESCRIPTION="Tool for recovering passwords and content from PDF-files"
HOMEPAGE="http://pdfcrack.sourceforge.net/"
SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~amd64 ~ppc ~x86"
PATCHES=(
"${FILESDIR}/${PN}-0.14-cflags.patch"
)
src_compile() {
emake CC="$(tc-getCC)"
}
src_install() {
dobin pdfcrack
dodoc changelog README
}

Binary file not shown.

@ -1,4 +1,4 @@
# Copyright 1999-2019 Gentoo Authors
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@ -11,7 +11,7 @@ SRC_URI="https://dev.gentoo.org/~ulm/emacs/${P}.tar.xz"
LICENSE="GPL-2+"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos"
KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ia64 ppc ppc64 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos"
BDEPEND="sys-apps/texinfo"

Binary file not shown.

@ -1,2 +1,4 @@
DIST wine-gecko-2.47.1-x86.msi 50735104 BLAKE2B c082e22fdbf1681e0c38e8822bc1a8f99b47d91f7d32f22bfad716685553d3d10fd4004f90135d90f39f4ff05cba37665455679e08ce3a140ca8ded76cb7a9ea SHA512 ef13838bf7d5bdd74d06bbbdccc6b18cc75b4d0c2b3db8c978b9500cdfeb058bf5532d89b77c164eab52c1f93ae2e2540b37f6694a3e560aace3ebc7da2c7596
DIST wine-gecko-2.47.1-x86_64.msi 52311040 BLAKE2B 2a9aa68461d2b9f69ada1e50925de7ba9804a4992c9d0a717c9c5d1340179e7f10e550c8db170bb33c79e24dcd068e00648c572c6b4e4d836a507ada6e7bbccd SHA512 f875d9a7c68a33abf6dd25d61ff6dd3e5ff246768880e3ee4984ab63b065a7b0ef55411b710e4cb9db48bd2114cbd3fbd97f24e819d7d71c2212dd612abaaf43
DIST wine_gecko-2.47-x86.msi 49266176 BLAKE2B 6b1d4ebf53fac422c2da9ae7f5b6ab9064d2b6cc20d57fe13707395e71305ac1607a440624d3a545fe1e0391bc92bf5b594173549e519eda967bb833b69b2f52 SHA512 e0d06102dcb8ec2d24e8c8c3f5c2ee5cb47c18e203dfb43d85de008d682ff874fb664fef1df909a5a7857de39c7e8ce5175e734a11964ec4cd35f8fbacaea3a4
DIST wine_gecko-2.47-x86_64.msi 50806272 BLAKE2B 6f91d4661a322eca41042cb7a246d5bff76ab72b4bda67183fc36735c923bd6d76624f21fd3e59f63fd872704edcf0116a6e7ab4fa6f074f5098c8fb5307534c SHA512 7c2496b15a06bc6906bc60afb3ac082e3f9931207fa624e60297020211d66aa9b420a61e95730a0dbdcefbe4b26c811d0c896ecd9c363b5107d08c3fa22fef41

@ -0,0 +1,26 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
DESCRIPTION="A Mozilla Gecko based version of Internet Explorer for Wine"
HOMEPAGE="https://winehq.org"
SRC_URI="
abi_x86_32? ( https://dl.winehq.org/wine/${PN}/${PV}/${PN}-${PV}-x86.msi )
abi_x86_64? ( https://dl.winehq.org/wine/${PN}/${PV}/${PN}-${PV}-x86_64.msi )
"
LICENSE="Apache-2.0 BSD BSD-2 MIT MPL-2.0"
SLOT="${PV}"
KEYWORDS="~amd64 ~x86"
IUSE="abi_x86_32 abi_x86_64"
DEPEND="!!app-emulation/wine:0"
S="${WORKDIR}"
src_install(){
insinto /usr/share/wine/gecko
use abi_x86_32 && doins "${DISTDIR}/${PN}-${PV}-x86.msi"
use abi_x86_64 && doins "${DISTDIR}/${PN}-${PV}-x86_64.msi"
}

@ -127,7 +127,7 @@ RDEPEND="${COMMON_DEPEND}
>app-eselect/eselect-wine-0.3
!app-emulation/wine:0
dos? ( >=games-emulation/dosbox-0.74_p20160629 )
gecko? ( app-emulation/wine-gecko:2.47[abi_x86_32?,abi_x86_64?] )
gecko? ( app-emulation/wine-gecko:2.47.1[abi_x86_32?,abi_x86_64?] )
mono? ( app-emulation/wine-mono:4.9.4 )
perl? (
dev-lang/perl

@ -127,7 +127,7 @@ RDEPEND="${COMMON_DEPEND}
>app-eselect/eselect-wine-0.3
!app-emulation/wine:0
dos? ( >=games-emulation/dosbox-0.74_p20160629 )
gecko? ( app-emulation/wine-gecko:2.47[abi_x86_32?,abi_x86_64?] )
gecko? ( app-emulation/wine-gecko:2.47.1[abi_x86_32?,abi_x86_64?] )
mono? ( app-emulation/wine-mono:4.9.4 )
perl? (
dev-lang/perl

@ -108,7 +108,7 @@ RDEPEND="${COMMON_DEPEND}
>app-eselect/eselect-wine-0.3
!app-emulation/wine:0
dos? ( >=games-emulation/dosbox-0.74_p20160629 )
gecko? ( app-emulation/wine-gecko:2.47[abi_x86_32?,abi_x86_64?] )
gecko? ( app-emulation/wine-gecko:2.47.1[abi_x86_32?,abi_x86_64?] )
mono? ( app-emulation/wine-mono:4.9.4 )
perl? (
dev-lang/perl

@ -108,7 +108,7 @@ RDEPEND="${COMMON_DEPEND}
>app-eselect/eselect-wine-0.3
!app-emulation/wine:0
dos? ( >=games-emulation/dosbox-0.74_p20160629 )
gecko? ( app-emulation/wine-gecko:2.47[abi_x86_32?,abi_x86_64?] )
gecko? ( app-emulation/wine-gecko:2.47.1[abi_x86_32?,abi_x86_64?] )
mono? ( app-emulation/wine-mono:4.9.4 )
perl? (
dev-lang/perl

Binary file not shown.

@ -1,9 +1,9 @@
# Copyright 1999-2017 Gentoo Foundation
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
EAPI=7
inherit systemd git-r3 autotools
inherit git-r3 autotools
DESCRIPTION="PHP eselect module"
HOMEPAGE="https://gitweb.gentoo.org/proj/eselect-php.git/"
@ -19,7 +19,7 @@ RDEPEND="app-admin/eselect
apache2? ( www-servers/apache[apache2_modules_dir] )"
src_prepare() {
eapply_user
default
eautoreconf
}
@ -36,14 +36,3 @@ src_configure(){
$(use_enable apache2) \
$(use_enable fpm)
}
src_install() {
default
if use fpm ; then
systemd_dotmpfilesd "${FILESDIR}/php-fpm.conf"
sed -e "s,@libdir@,$(get_libdir),g" "${FILESDIR}/php-fpm-launcher-r3" > "${T}"/php-fpm-launcher || die
exeinto /usr/libexec
doexe "${T}"/php-fpm-launcher
fi
}

Binary file not shown.

@ -9,7 +9,7 @@ SRC_URI="https://github.com/microcai/${PN}/releases/download/${PV%.0}/${P}.tar.b
LICENSE="GPL-3"
SLOT="0"
KEYWORDS="~amd64 ~x86"
KEYWORDS="amd64 x86"
IUSE="nls +zinnia"
RDEPEND="app-i18n/ibus

Binary file not shown.

@ -11,7 +11,7 @@ if [[ ${PV} == "9999" ]] ; then
inherit git-r3
else
SRC_URI="https://github.com/ReFirmLabs/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
KEYWORDS="~amd64 ~x86 ~x64-macos"
KEYWORDS="~amd64 ~ppc64 ~x86 ~x64-macos"
fi
DESCRIPTION="A tool for identifying files embedded inside firmware images"

Binary file not shown.

@ -15,7 +15,7 @@ if [[ ${PV} == *9999 ]]; then
S="${WORKDIR}/${P}/repoman"
else
SRC_URI="https://dev.gentoo.org/~zmedico/portage/archives/${P}.tar.bz2"
KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ia64 ~m68k ~mips ~ppc ppc64 ~riscv ~s390 ~sh sparc x86 ~ppc-aix ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sh sparc x86 ~ppc-aix ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
fi
DESCRIPTION="Repoman is a Quality Assurance tool for Gentoo ebuilds"

Binary file not shown.

@ -2,3 +2,4 @@ DIST calibre-3.48.0.tar.xz 38777408 BLAKE2B 9a7fae20487ae93120cfdc06a312a42d54d6
DIST calibre-4.7.0.tar.xz 37432756 BLAKE2B 5030bee02506c2051949c248a941289da7b4e6b48aa638abcf14ab9c56f6552b1043f85bc6fbae644e33843711ad11d03da4ac3a320cb7cf4590bc1d0bf92ed8 SHA512 852f3ff45cbf055571c47754b55b51607ede63865fe04263a9c8d5d59973eaa8c5da718f589d2b830567796f59d5bd5189c8e5e9455e3f98e879a37acb7174e3
DIST calibre-4.8.0.tar.xz 37448552 BLAKE2B 416500da33c5a7e0bb84e521db757c1ba5c6e38f04c2b92ad08c2039c64a7c7cc6daddf379cffe120e966e856468cb99da6d80feab75c518a3218a2e07c9cfd9 SHA512 5ab2340d9f4a8e4592aa5929827513127830bca5830f4861db97699fe491845dd17018158dc7c143255ce57730bc9e5ba556ddebb033d18086d0e1901388f840
DIST calibre-4.9.0.tar.xz 37536676 BLAKE2B 6dd57d1c0e57197b299d253ed7b9b0a941664dccef4fe37cb5586bc32ca29617355db8d84944d8fa9f56e09d3cfea54e9cb893f2eec07f3f359516b6c47ea074 SHA512 5442daf6143571bac5c970ff5f6285cbcd63ec30ce6e77603ef7966fa4e033b3b575fec65887defe5e511b2157ae114349851e2d0f398c117e5fccc799e01046
DIST calibre-4.9.1.tar.xz 37529656 BLAKE2B 5d703ca0c398b43cc26a54e0628d0fe938c6a5027a4fd0c9cac83944e5143eb08439bf79b2098182be7727eaa042748f17866788b02c7744178dce131f6b1d1e SHA512 bf06aa3cbc8d255934f3f7f3ce20b4798edf107ed9f822943d2b4ae7d95473842928ed79f8ba7571f7e0ebdc267c441916d543d5b7630aae5cb151bcc3184b71

@ -0,0 +1,266 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
PYTHON_COMPAT=( python2_7 )
PYTHON_REQ_USE="sqlite,ssl"
inherit bash-completion-r1 desktop toolchain-funcs python-single-r1 xdg-utils
DESCRIPTION="Ebook management application"
HOMEPAGE="https://calibre-ebook.com/"
SRC_URI="https://download.calibre-ebook.com/${PV}/${P}.tar.xz"
LICENSE="
GPL-3+
GPL-3
GPL-2+
GPL-2
GPL-1+
LGPL-3+
LGPL-2.1+
LGPL-2.1
BSD
MIT
Old-MIT
Apache-2.0
public-domain
|| ( Artistic GPL-1+ )
CC-BY-3.0
OFL-1.1
PSF-2
"
KEYWORDS="~amd64 ~arm ~x86"
SLOT="0"
IUSE="ios +udisks"
REQUIRED_USE="${PYTHON_REQUIRED_USE}"
COMMON_DEPEND="${PYTHON_DEPS}
>=app-text/hunspell-1.7:=
>=app-text/podofo-0.9.6_pre20171027:=
>=app-text/poppler-0.26.5[qt5]
>=dev-libs/chmlib-0.40:=
dev-libs/glib:2=
dev-libs/hyphen:=
>=dev-libs/icu-57.1:=
dev-libs/libinput:=
>=dev-python/apsw-3.25.2_p1[${PYTHON_USEDEP}]
dev-python/beautifulsoup:4[${PYTHON_USEDEP}]
>=dev-python/chardet-3.0.3[${PYTHON_USEDEP}]
>=dev-python/cssselect-0.7.1[${PYTHON_USEDEP}]
>=dev-python/css-parser-1.0.4[${PYTHON_USEDEP}]
>=dev-python/dbus-python-1.2.4[${PYTHON_USEDEP}]
>=dev-libs/dbus-glib-0.106
>=sys-apps/dbus-1.10.8
dev-python/dnspython[${PYTHON_USEDEP}]
>=dev-python/feedparser-5.2.1[${PYTHON_USEDEP}]
>=dev-python/html2text-2019.8.11[${PYTHON_USEDEP}]
>=dev-python/html5-parser-0.4.9[${PYTHON_USEDEP}]
>=dev-python/lxml-3.8.0[${PYTHON_USEDEP}]
>=dev-python/markdown-3.0.1[${PYTHON_USEDEP}]
>=dev-python/mechanize-0.3.5[${PYTHON_USEDEP}]
>=dev-python/msgpack-0.5.6[${PYTHON_USEDEP}]
>=dev-python/netifaces-0.10.5[${PYTHON_USEDEP}]
>=dev-python/pillow-3.2.0[${PYTHON_USEDEP}]
>=dev-python/psutil-4.3.0[${PYTHON_USEDEP}]
>=dev-python/pygments-2.3.1[${PYTHON_USEDEP}]
>=dev-python/python-dateutil-2.5.3[${PYTHON_USEDEP}]
>=dev-python/PyQt5-5.12[gui,svg,widgets,network,printsupport,${PYTHON_USEDEP}]
>=dev-python/PyQtWebEngine-5.12[${PYTHON_USEDEP}]
dev-python/regex[${PYTHON_USEDEP}]
dev-qt/qtcore:5=
dev-qt/qtdbus:5=
dev-qt/qtgui:5=
>=dev-qt/qtwebengine-5.12
dev-qt/qtwidgets:5=
dev-util/desktop-file-utils
dev-util/gtk-update-icon-cache
media-fonts/liberation-fonts
media-libs/fontconfig:=
>=media-libs/freetype-2:=
>=media-libs/libmtp-1.1.11:=
>=media-libs/libwmf-0.2.8
>=media-gfx/optipng-0.7.6
>=sys-libs/zlib-1.2.11:=
virtual/libusb:1=
x11-libs/libxkbcommon:=
x11-libs/libX11:=
x11-libs/libXext:=
x11-libs/libXrender:=
x11-misc/shared-mime-info
>=x11-misc/xdg-utils-1.0.2-r2
ios? (
>=app-pda/usbmuxd-1.0.8
>=app-pda/libimobiledevice-1.2.0
)
udisks? ( virtual/libudev )"
RDEPEND="${COMMON_DEPEND}
udisks? ( || ( sys-fs/udisks:2 sys-fs/udisks:0 ) )"
DEPEND="${COMMON_DEPEND}
>=dev-python/setuptools-23.1.0[${PYTHON_USEDEP}]
dev-python/sip[${PYTHON_USEDEP}]
>=virtual/podofo-build-0.9.6_pre20171027
virtual/pkgconfig"
pkg_pretend() {
if [[ ${MERGE_TYPE} != binary && $(gcc-major-version) -lt 6 ]]; then
eerror "Calibre cannot be built with this version of gcc."
eerror "You need at least gcc-6.0"
die "Your C compiler is too old for this package."
fi
}
src_prepare() {
# no_updates: do not annoy user with "new version is availible all the time
# disable_plugins: walking sec-hole, wait for upstream to use GHNS interface
eapply \
"${FILESDIR}/${PN}-2.9.0-no_updates_dialog.patch" \
"${FILESDIR}/${PN}-disable_plugins.patch"
eapply_user
# Fix outdated version constant.
#sed -e "s#\\(^numeric_version =\\).*#\\1 (${PV//./, })#" \
# -i src/calibre/constants.py || \
# die "sed failed to patch constants.py"
# Avoid sandbox violation in /usr/share/gnome/apps when linux.py
# calls xdg-* (bug #258938).
sed -e "s|'xdg-desktop-menu', 'install'|\\0, '--mode', 'user'|" \
-e "s|check_call(\\['xdg-desktop-menu', 'forceupdate'\\])|#\\0|" \
-e "s|\\(CurrentDir(tdir)\\), \\\\\$|\\1:|" \
-e "s|, PreserveMIMEDefaults():|:|" \
-e "s|'xdg-icon-resource', 'install'|\\0, '--mode', 'user'|" \
-e "s|cmd\[2\]|cmd[4]|" \
-e "s|cc(\\['xdg-desktop-menu', 'forceupdate'\\])|#\\0|" \
-e "s|'xdg-mime', 'install'|\\0, '--mode', 'user'|" \
-i src/calibre/linux.py || die "sed failed to patch linux.py"
# Disable unnecessary privilege dropping for bug #287067.
sed -e "s:if os.geteuid() == 0:if False and os.geteuid() == 0:" \
-i setup/install.py || die "sed failed to patch install.py"
sed -e "/^ self.check_call(\\[QMAKE\\] + qmc + \\[proname\\])$/a\
\\ \\ \\ \\ \\ \\ \\ \\ \\ \\ \\ \\ \\ \\ \\ \\ self.check_call(['sed', \
'-e', 's|^CFLAGS .*|\\\\\\\\0 ${CFLAGS}|', \
'-e', 's|^CXXFLAGS .*|\\\\\\\\0 ${CXXFLAGS}|', \
'-e', 's|^LFLAGS .*|\\\\\\\\0 ${LDFLAGS}|', \
'-i', 'Makefile'])" \
-i setup/build.py || die "sed failed to patch build.py"
}
src_install() {
# Bypass kbuildsycoca and update-mime-database in order to
# avoid sandbox violations if xdg-mime tries to call them.
cat - > "${T}/kbuildsycoca" <<-EOF
#!${BASH}
echo $0 : $@
exit 0
EOF
cp "${T}"/{kbuildsycoca,update-mime-database} || die
chmod +x "${T}"/{kbuildsycoca,update-mime-database} || die
export QMAKE="${EPREFIX}/usr/$(get_libdir)/qt5/bin/qmake"
# Unset DISPLAY in order to prevent xdg-mime from triggering a sandbox
# violation with kbuildsycoca as in bug #287067, comment #13.
export -n DISPLAY
# Bug #352625 - Some LANGUAGE values can trigger the following ValueError:
# File "/usr/lib/python2.6/locale.py", line 486, in getdefaultlocale
# return _parse_localename(localename)
# File "/usr/lib/python2.6/locale.py", line 418, in _parse_localename
# raise ValueError, 'unknown locale: %s' % localename
#ValueError: unknown locale: 46
export -n LANG LANGUAGE ${!LC_*}
export LC_ALL=C #684484
# Bug #295672 - Avoid sandbox violation in ~/.config by forcing
# variables to point to our fake temporary $HOME.
export HOME="${T}/fake_homedir"
export XDG_CONFIG_HOME="${HOME}/.config"
export XDG_DATA_HOME="${HOME}/.local/share"
export CALIBRE_CONFIG_DIRECTORY="${XDG_CONFIG_HOME}/calibre"
mkdir -p "${XDG_DATA_HOME}" "${CALIBRE_CONFIG_DIRECTORY}" || die
tc-export CC CXX
# Bug #334243 - respect LDFLAGS when building extensions
export OVERRIDE_CFLAGS="$CFLAGS" OVERRIDE_LDFLAGS="$LDFLAGS"
local libdir=$(get_libdir)
[[ -n $libdir ]] || die "get_libdir returned an empty string"
addpredict /dev/dri #665310
PATH=${T}:${PATH} PYTHONPATH=${S}/src${PYTHONPATH:+:}${PYTHONPATH} \
"${PYTHON}" setup.py install \
--root="${D}" \
--prefix="${EPREFIX}/usr" \
--libdir="${EPREFIX}/usr/${libdir}" \
--staging-root="${ED}/usr" \
--staging-libdir="${ED}/usr/${libdir}" || die
rm "${ED}/usr/share/applications/defaults.list" || die
find "${ED}"/usr/share -type d -empty -delete
cd "${ED}"/usr/share/calibre/fonts/liberation || die
local x
for x in * ; do
[[ -f ${EPREFIX}usr/share/fonts/liberation-fonts/${x} ]] || continue
ln -sf "../../../fonts/liberation-fonts/${x}" "${x}" || die
done
einfo "Converting python shebangs"
python_fix_shebang --force "${ED}"
einfo "Compiling python modules"
python_optimize "${ED}"/usr/lib/calibre
newinitd "${FILESDIR}"/calibre-server-3.init calibre-server
newconfd "${FILESDIR}"/calibre-server-3.conf calibre-server
bashcomp_alias calibre \
lrfviewer \
calibre-debug \
ebook-meta \
calibre-server \
ebook-viewer \
ebook-polish \
fetch-ebook-metadata \
lrf2lrs \
ebook-convert \
ebook-edit \
calibre-smtp \
ebook-device
}
pkg_preinst() {
# Indentify stray directories from upstream's "Binary install"
# method (see bug 622728).
CALIBRE_LIB_DIR=/usr/$(get_libdir)/calibre
CALIBRE_LIB_CONTENT=$(for x in "${ED}${CALIBRE_LIB_DIR}"/*; do
printf -- "${x##*/} "; done) || die "Failed to list ${ED}${CALIBRE_LIB_DIR}"
}
pkg_postinst() {
[[ -n ${CALIBRE_LIB_DIR} ]] || die "CALIBRE_LIB_DIR is unset"
local x
for x in "${EROOT}${CALIBRE_LIB_DIR}"/*; do
if [[ " ${CALIBRE_LIB_CONTENT} " != *" ${x##*/} "* ]]; then
elog "Purging '${x}'"
rm -rf "${x}"
fi
done
xdg_desktop_database_update
xdg_mimeinfo_database_update
xdg_icon_cache_update
}
pkg_postrm() {
xdg_desktop_database_update
xdg_mimeinfo_database_update
xdg_icon_cache_update
}

@ -1 +1,2 @@
DIST discount-2.2.4.tar.bz2 99482 BLAKE2B b04c372cef27d0a4a09a588eb66376dc70494eefe5c8a9e7aedb8075f081a6f32eafbb9671c29deea7d89128f4f30c93d38c17268eccbb1c917db6c1b7d3e040 SHA512 0650e0ce3f6948e3a30fdaa1a810e895f64621c55df46c7a5ed8755e65c1b718b7a1d1a1bfe0a87a3a59fbb13fca8907718f1aa095125a4b6e152602b8e490cf
DIST discount-2.2.6.tar.bz2 102303 BLAKE2B 6ffcb64ff8889d79832b28db9a824e5a30bd194a6746dd08e4782cb4b7e60cf47c44f244884fc10372fc2b052fff7d70e6c263e6f4175829d1aedbc8c2ea15c6 SHA512 b67395afed0899563e28fdd2ddd5016d4f382b6b7e46612d12853d701ba191b90771d40e1223e24e3fbf497cad01fdd2e1c67a6b2bf4f6cf082f3fbe981bd002

@ -0,0 +1,65 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
inherit toolchain-funcs
DESCRIPTION="A Markdown-to HTML translator written in C"
HOMEPAGE="http://www.pell.portland.or.us/~orc/Code/discount/"
SRC_URI="http://www.pell.portland.or.us/~orc/Code/${PN}/${P}.tar.bz2"
LICENSE="BSD"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ia64 ~ppc ~ppc64 ~sparc ~x86"
IUSE="minimal test"
RESTRICT="!test? ( test )"
src_prepare() {
default
# for QA, we remove the Makefiles usage of install -s.
# Drop ldconfig invocation.
# Force “librarian.sh” to respect LDFLAGS ($FLAGS should have CFLAGS
# at that point).
sed -i \
-e '/INSTALL_PROGRAM/s,\$_strip ,,' \
-e 's/\(LDCONFIG=\).*/\1:/' \
-e 's/\(.\)\$FLAGS/& \1$LDFLAGS/' \
configure.inc || die "sed configure.inc failed"
}
src_configure() {
local configure_call=(
./configure.sh
--libdir="${EPREFIX}"usr/"$(get_libdir)"
--prefix="${EPREFIX}"usr
--mandir="${EPREFIX}"usr/share/man
--shared
--pkg-config
$(usex minimal '' --enable-all-features)
# Enable deterministic HTML generation behavior. Otherwise, will
# actually call rand() as part of its serialization code...
--debian-glitch
)
einfo "Running ${configure_call[@]}"
CC="$(tc-getCC)" \
"${configure_call[@]}" || die
}
src_install() {
emake \
DESTDIR="${D}" \
$(usex minimal install install.everything) \
SAMPLE_PFX="${PN}-"
insinto /usr/$(get_libdir)/pkgconfig
doins libmarkdown.pc
}
pkg_postinst() {
if ! use minimal; then
elog 'Sample binaries with overly-generic names have been'
elog "prefixed with \"${PN}-\"."
fi
}

@ -1,5 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<!-- maintainer-needed -->
<maintainer type="person">
<email>bkohler@gentoo.org</email>
<name>Ben Kohler</name>
</maintainer>
</pkgmetadata>

@ -1,4 +1,4 @@
# Copyright 1999-2019 Gentoo Authors
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="6"
@ -28,6 +28,13 @@ src_prepare() {
-e '/^db-install:/s:$: base-install:' \
Makefile || die
# make-4.3 doesn't like the CC line (bug #706024)
# and "echo -n" is not portable
sed \
-e "s@^\(CC=\).*\$@\1\"$(tc-getCC)\"@" \
-e 's@echo -n@printf@g' \
-i configure || die
cat <<-EOF > "configure.local"
PREFIX="${EPREFIX}/usr"
BINDIR="${EPREFIX}/usr/bin"

Binary file not shown.

@ -1,4 +1,4 @@
# Copyright 1999-2019 Gentoo Authors
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@ -9,7 +9,7 @@ SRC_URI="https://dev.gentoo.org/~ulm/emacs/${P}.tar.xz"
LICENSE="GPL-2+"
SLOT="0"
KEYWORDS="~amd64 ~hppa ~x86"
KEYWORDS="amd64 ~hppa x86"
RDEPEND=">=app-editors/xemacs-21.4.20-r5
app-xemacs/sh-script"

Binary file not shown.

@ -0,0 +1,9 @@
DIST go-darwin-amd64-bootstrap-1.13.6.tbz 119340642 BLAKE2B 93d1d2fdd24e6a56d9583d90e64788fe28284302d1e1346a2009dcba8f80917bf113398f269922277bd066b068f62fffa146523bd57a5b7b178f0008f3c4d154 SHA512 1f27885d454963e88f73d3b6ef4d0167a5df6ad81c4725fb3b2be19e2c7bad13ef36ff6c100b8788fa2085285e462f0d2b3dfaf8bd67b0804a137969054cb5ae
DIST go-linux-386-bootstrap-1.13.6.tbz 116991833 BLAKE2B e15c4dd3c9bfb233f81d318591df5cb2a73e033a088cd652371f6933b8732c7d5c1292ec8110b23f85b30d5afdea97e798b264c61f5651db08c7ac903e8dcbb6 SHA512 114c2f670f21624f0dfefabb99b7263e2133e58c2072ce341a6ea604278e22361779f2e0d3771b7a427e979d7e34f3fc3afcd0f8297d778c3552858ce64ec0c8
DIST go-linux-amd64-bootstrap-1.13.6.tbz 116924754 BLAKE2B 3a28ded6df7e04081c727ad90ad2c8b67e1171aea8cd86b9570d65b275c2a4f1a84084d65a6c3e2efbece5594ba1aad3efc1a2fba36aa2dc68902c5c228c05e8 SHA512 3ade49da050d132309357a190628c3ff3a93cffa88f56e1d771f53358c825f210b6870870a96fdbc27717f1b464d904a6f605073377de2f0516cf635a1ce8241
DIST go-linux-arm-bootstrap-1.13.6.tbz 112324731 BLAKE2B 18166e279b1d30f48e08007df8639775b58081805a7e5799dae14e0b357330cf69997f4a5c844bd10a9eeef44225d52f26197e07d16bb7a42fe5a6185634f4b5 SHA512 4d502e2231c1822dacb62cd00b435d52710b1511715385c0b3ddf9f66a446ae90e9b1628b501ba8e1d1a94ca5c28249a323da56f869e88480aa6c249ca001c6e
DIST go-linux-arm64-bootstrap-1.13.6.tbz 110290994 BLAKE2B dc8985a305d1ef3ae683de9787333f0be3d43d5e642a3b5a315cf003311fb47e55588eb1acf816e5eb4215802832a43445ebecedfd2d680d350cb65e0ce7394f SHA512 bc5f4c4554987a5df735bb96c9b8ae78624169d847ab17ea9b0e969ecaab109311892cf1985d576cd46bf271562b724c6a3796472e197a2c8bb48da0d51128a9
DIST go-linux-ppc64-bootstrap-1.13.6.tbz 110762916 BLAKE2B 19d44da5bcd1f4832772469beed509475f9a38ab55b386490faf1b270ffd7cc13d315dfe4746b3b9ca6a324c0e6f2e0144a3146d43bd6210d0479063f8627e34 SHA512 2a76c6168d7ba0c7eb020a1af4eccb2a5aee510a1f8e4bb438f5ea769677724c1450209c2fc9a4ccff1084f1a091a568e667ec33a5d537539a09ece426cf82d8
DIST go-linux-ppc64le-bootstrap-1.13.6.tbz 110086770 BLAKE2B a3f2c1b840f85d7726336285a56d1850fd10f32d90341836a4124a7d181778c3a1cff1d576e4a19a4f3556e961d84fa77202891725b5237121040bdd020af339 SHA512 6c4bd54fafea65fbb16a3e6c57b721c10654a5f18879c164f6889a01ec6581b13b450622e83897032ab3ed43a9ff4a7edb6d30c56d41dd23991e8453c1bae359
DIST go-linux-s390x-bootstrap-1.13.6.tbz 115641137 BLAKE2B 7ab94a8f7c839ee8fb58673ed5ad00a569a0bae7a13bb214098154aedb1c272837d0903c226cb87b5eb46475589ddcd56e1afafc81ddaea988ce3c3ddca686d1 SHA512 794b72f48634a7f7dfb41c64607d66974ef9413a68e39a3959a981e2aaf356fd2cec9e2eb0c25d1b7b3d179c0a72ce053dc9c69463bde0ec893ab472f7076204
DIST go-solaris-amd64-bootstrap-1.13.6.tbz 116214396 BLAKE2B 3f5d6fcf2131a0944b2846eab2fc069f5d90fea1e7d98e8bd50ba5091d4b2ae01964fa71c29310fa7ff7c990ca0dd1afc83577174a46552d58d611716fedb854 SHA512 2d2c281c196729dd97f338fe3bd7396268c0b6fcfc8241b99a939f647201ed39929a5b0a096b9d1f7ffb20f79fd7b3cc25127d7a93f9836f6f0d1e5dbc2c6235

@ -0,0 +1,35 @@
# Copyright 2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
DESCRIPTION="Bootstrap package for dev-lang/go"
HOMEPAGE="https://golang.org"
BOOTSTRAP_DIST="https://dev.gentoo.org/~williamh/dist"
SRC_URI="
amd64? ( ${BOOTSTRAP_DIST}/go-linux-amd64-bootstrap-${PV}.tbz )
arm? ( ${BOOTSTRAP_DIST}/go-linux-arm-bootstrap-${PV}.tbz )
arm64? ( ${BOOTSTRAP_DIST}/go-linux-arm64-bootstrap-${PV}.tbz )
ppc64? (
big-endian? ( ${BOOTSTRAP_DIST}/go-linux-ppc64-bootstrap-${PV}.tbz )
!big-endian? ( ${BOOTSTRAP_DIST}/go-linux-ppc64le-bootstrap-${PV}.tbz )
)
s390? ( ${BOOTSTRAP_DIST}/go-linux-s390x-bootstrap-${PV}.tbz )
x86? ( ${BOOTSTRAP_DIST}/go-linux-386-bootstrap-${PV}.tbz )
x64-macos? ( ${BOOTSTRAP_DIST}/go-darwin-amd64-bootstrap-${PV}.tbz )
x64-solaris? ( ${BOOTSTRAP_DIST}/go-solaris-amd64-bootstrap-${PV}.tbz )
"
LICENSE="BSD"
SLOT="0"
KEYWORDS="amd64 arm arm64 ppc64 ~s390 x86 ~amd64-linux ~x86-linux ~x64-macos ~x64-solaris"
IUSE="big-endian"
RESTRICT="strip"
QA_PREBUILT="*"
S="${WORKDIR}"
src_install() {
dodir /usr/lib
mv go-*-bootstrap "${ED}/usr/lib/go-bootstrap" || die
}

@ -0,0 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>williamh@gentoo.org</email>
<name>William Hubbs</name>
</maintainer>
<longdescription lang="en">
This package is used only to boot strap <pkg>dev-lang/go</pkg>.
It is not meant to be used by end users directly.
</longdescription>
</pkgmetadata>

@ -1,26 +1,15 @@
DIST go-darwin-amd64-bootstrap-1.13.6.tbz 119340642 BLAKE2B 93d1d2fdd24e6a56d9583d90e64788fe28284302d1e1346a2009dcba8f80917bf113398f269922277bd066b068f62fffa146523bd57a5b7b178f0008f3c4d154 SHA512 1f27885d454963e88f73d3b6ef4d0167a5df6ad81c4725fb3b2be19e2c7bad13ef36ff6c100b8788fa2085285e462f0d2b3dfaf8bd67b0804a137969054cb5ae
DIST go-darwin-amd64-bootstrap-1.8.tbz 55053831 BLAKE2B 7d87ff36b0e13b3b3c0b8ffc4516493e1a6dde1287675b85b591c1d0a8438c9cb9c8991dc53d3c94c5ebb26830da1c7177ef1f90c250c1efeb5868020abcc660 SHA512 4cc24d44c84c94feafab021c0977fcea2aca8f191c6395e38fff68154b1e64efc3f94331c3e36c7b69901af58e9d53545c682f0a742d36b2d230508bd69777c4
DIST go-freebsd-386-bootstrap-1.8.tbz 53739013 BLAKE2B a91e0a6b601aadc965f774ffd25a185e1f300e7194e969337f32bf9cb3056769786d92ef697271e7434d72c04d9d6780bf0fb3cb70efa83fe53cc18dc23670ec SHA512 c92f849b2d92401657412cccc589042b2747e55b2f4813d674c5bc91c3f535ee60f8ed7b8cbf1320e216d22a16dade8b78bb8071982895901f2b3c304e38f478
DIST go-freebsd-amd64-bootstrap-1.8.tbz 55103927 BLAKE2B 30e4e4bcb43da3a170f520b47cd032a524d4c4977a9c76c4d597bb50e21a3ad2ef764dec15085d97cb5791bd483d8fac10ef5949c56b46e7580468fc9c90a78c SHA512 c7d50731ff41147295ef5f3233aa1404081b47e786a300e1d0e4db8348e56bd73fe5f169fe8b807ffa37a53683e3aef16ebb6e877d802b86ff1a3d5d3a6f44cb
DIST go-linux-386-bootstrap-1.13.6.tbz 116991833 BLAKE2B e15c4dd3c9bfb233f81d318591df5cb2a73e033a088cd652371f6933b8732c7d5c1292ec8110b23f85b30d5afdea97e798b264c61f5651db08c7ac903e8dcbb6 SHA512 114c2f670f21624f0dfefabb99b7263e2133e58c2072ce341a6ea604278e22361779f2e0d3771b7a427e979d7e34f3fc3afcd0f8297d778c3552858ce64ec0c8
DIST go-linux-386-bootstrap-1.8.tbz 53843745 BLAKE2B 6bbb6df7ea0f7307386590524261f9ec477e7032171020ac3ed4a09bf9c39075ba4143c466611b0ab28cc4b494dec75063ecb291d2166a82bc7601562e7e3685 SHA512 b456f7572d04c805a6fc756647c050460f76e5404dba41963c861c92f1600e9fedafe181a1f69132518065737a88edb4b183ec8c3ca24bc8df31279117e92606
DIST go-linux-amd64-bootstrap-1.13.6.tbz 116924754 BLAKE2B 3a28ded6df7e04081c727ad90ad2c8b67e1171aea8cd86b9570d65b275c2a4f1a84084d65a6c3e2efbece5594ba1aad3efc1a2fba36aa2dc68902c5c228c05e8 SHA512 3ade49da050d132309357a190628c3ff3a93cffa88f56e1d771f53358c825f210b6870870a96fdbc27717f1b464d904a6f605073377de2f0516cf635a1ce8241
DIST go-linux-amd64-bootstrap-1.8.tbz 55399105 BLAKE2B 2a0b101b9dfd9db8c62dfc12418a7b03d6a346de43f7c75a8272d05ca12c36b4844b0f631199c5944a436e50aeeb6cd591323268ecdf33ec2412283efab8c59b SHA512 89d68cfe0e6ce4be690cf52a4a02b17ef2cae3538b057d4690bfd6e93727bcdc1cbc17cba3403e652bb95bffd25d44bdd4efd0014d1d2f019838bde925139f57
DIST go-linux-arm-bootstrap-1.13.6.tbz 112324731 BLAKE2B 18166e279b1d30f48e08007df8639775b58081805a7e5799dae14e0b357330cf69997f4a5c844bd10a9eeef44225d52f26197e07d16bb7a42fe5a6185634f4b5 SHA512 4d502e2231c1822dacb62cd00b435d52710b1511715385c0b3ddf9f66a446ae90e9b1628b501ba8e1d1a94ca5c28249a323da56f869e88480aa6c249ca001c6e
DIST go-linux-arm-bootstrap-1.8.tbz 53948103 BLAKE2B 515051e777ad273999c82f31b8a07ba61b77fbeede761a72b52c0bc3a7b55da013b5061af03a1b9634bf7b44429d7b371b89be85fb9e4f3a23d4d1a3c52bd90b SHA512 98ff0dbdb2aca9e54ea5327c9d31ce389e434a887015ef8555a8e85223a9998075c5013045275fb995a877a8d247704a21d726d46df7097adc0c4aa03af4cd68
DIST go-linux-arm64-bootstrap-1.13.6.tbz 110290994 BLAKE2B dc8985a305d1ef3ae683de9787333f0be3d43d5e642a3b5a315cf003311fb47e55588eb1acf816e5eb4215802832a43445ebecedfd2d680d350cb65e0ce7394f SHA512 bc5f4c4554987a5df735bb96c9b8ae78624169d847ab17ea9b0e969ecaab109311892cf1985d576cd46bf271562b724c6a3796472e197a2c8bb48da0d51128a9
DIST go-linux-arm64-bootstrap-1.8.tbz 51947002 BLAKE2B 5899f5d304031eae96b66ed7aa21f5af13b0fdfdcd7a12095bda2eff0f5fe5610135f9370b34681e4c33f33c1e0428a2a09c1c8a581c6b170da223f57cac4607 SHA512 adfbe62c5594c267707078bf8afb94a793dfba004c04a1a60f96d023d96c2fc4a6a422dee93a0f3487b1f2e1e117c7c6c607b62126dd5535686aaed88f6659d9
DIST go-linux-ppc64-bootstrap-1.13.6.tbz 110762916 BLAKE2B 19d44da5bcd1f4832772469beed509475f9a38ab55b386490faf1b270ffd7cc13d315dfe4746b3b9ca6a324c0e6f2e0144a3146d43bd6210d0479063f8627e34 SHA512 2a76c6168d7ba0c7eb020a1af4eccb2a5aee510a1f8e4bb438f5ea769677724c1450209c2fc9a4ccff1084f1a091a568e667ec33a5d537539a09ece426cf82d8
DIST go-linux-ppc64-bootstrap-1.8.tbz 52315782 BLAKE2B 6be0a48e8bc4e5fed4d34f8aaa8dfb6ad4d513064275dd940d0f58b25d442b33ad71c11687d317448b93d9c4690f7412e5a6a4553ec5298663409416cec04fbf SHA512 0aa32ac1514055ed9140b8c8330cbdbadfd9da6ad00b60d49b0685473be21e0b6510c31394678e32048f2f38d06a0d575f453c555614664eaef2bf5be6c91734
DIST go-linux-ppc64le-bootstrap-1.13.6.tbz 110086770 BLAKE2B a3f2c1b840f85d7726336285a56d1850fd10f32d90341836a4124a7d181778c3a1cff1d576e4a19a4f3556e961d84fa77202891725b5237121040bdd020af339 SHA512 6c4bd54fafea65fbb16a3e6c57b721c10654a5f18879c164f6889a01ec6581b13b450622e83897032ab3ed43a9ff4a7edb6d30c56d41dd23991e8453c1bae359
DIST go-linux-ppc64le-bootstrap-1.8.tbz 52211575 BLAKE2B 7a28ec5a381369c4e9415c8360e904c2545380513afd328077c584e8af0bf6bd818aa03e5a58c350cbb98facc1c9dccb02b06adcb27233875497cf5d33265912 SHA512 6931d999dd0ee1ff44c4cec48acb27af061f57f87aa74802dcebab78553b46bc8ac732f07fe91e5074dbdd32c55b707994875934bfb12bb4276d71eb1d06c4ba
DIST go-linux-s390x-bootstrap-1.13.6.tbz 115641137 BLAKE2B 7ab94a8f7c839ee8fb58673ed5ad00a569a0bae7a13bb214098154aedb1c272837d0903c226cb87b5eb46475589ddcd56e1afafc81ddaea988ce3c3ddca686d1 SHA512 794b72f48634a7f7dfb41c64607d66974ef9413a68e39a3959a981e2aaf356fd2cec9e2eb0c25d1b7b3d179c0a72ce053dc9c69463bde0ec893ab472f7076204
DIST go-linux-s390x-bootstrap-1.8.tbz 57124869 BLAKE2B 920a176b8f4fc3a816e724324bbb30a383d599e31a0d2093d24797dbcd0e799a662a3589dbb87d2f5dd16df07c4cf8f1e444e87b540ec732746bb025dc9271f8 SHA512 d429cae870d66217ab2e07c74209d3031d97baa4f899b4d70ae6283a1a5b1434b037904c4cfca0b2bc798d5ba0b358c3739e000eccbc74809baf564c5686df5a
DIST go-solaris-amd64-bootstrap-1.13.6.tbz 116214396 BLAKE2B 3f5d6fcf2131a0944b2846eab2fc069f5d90fea1e7d98e8bd50ba5091d4b2ae01964fa71c29310fa7ff7c990ca0dd1afc83577174a46552d58d611716fedb854 SHA512 2d2c281c196729dd97f338fe3bd7396268c0b6fcfc8241b99a939f647201ed39929a5b0a096b9d1f7ffb20f79fd7b3cc25127d7a93f9836f6f0d1e5dbc2c6235
DIST go-solaris-amd64-bootstrap-1.8.tbz 54926326 BLAKE2B 0a45312f090d81ebf46fe5950cb65c059e2801394231e715e94145d1f918eb59b10472b2385e57ebd5cfb9eca0ad7290fb118436486b665520bb540970f971ab SHA512 52b849e5b9a940e10de7ba3df0ebdf6e1c5d631de9581d936c9edf8f38e6bb3314acbc2b2d5202b0528fde2a359d52bc0c6f39acf9b1b614725e4b4a947ed10d
DIST go1.12.13.src.tar.gz 21980338 BLAKE2B 205bee35a947ccd08f36547530e3de7928f5f3970be89580ddff80f7710dd1dcf4f292c10ec93c27717ce25ce2575f7151129430b80d1fb927872f891166d8db SHA512 a8210ba909c1bb26799625bbf648204dbef5a9f91af323277f76caee489f5912a08e9de686b71fe97d30c7dc171d5f4bcf8a2c2227d02353cfbb7d292c9efc22
DIST go1.12.14.src.tar.gz 20726032 BLAKE2B 2defecd29568974c1618ce0da42d9e28ef41904ed3f759b51c7e392ed9dea950a4984efa333e52b413fab3dac8270bb99f60e113712bfc648c4c9af0e19aba7d SHA512 6cd225282fbade8bd7e96789744c7db07f223f5309358ca3768c95c34a099b44bd9ba9adc2ce293a5bbd608237ae6473b86e7bb451db395c647809fc2750dd4c
DIST go1.12.15.src.tar.gz 20726294 BLAKE2B d123fc2328bf9db8f7337108e3d6857c31e10829096d47fb58519861b68bc0e2bdc9f032fc076666124ab418d3f37026107d6a853021fecbf26138bf00963572 SHA512 887e331c73b9d174e4a707a85be389fa0de43c77bc191ef5e0fe326ac7285374404450ca081cb8e92514a973d25d0314ca74eb17c8e53f8386e1798edd9d41aa
DIST go1.13.4.src.tar.gz 21619153 BLAKE2B 2efc86fd0830b9c8935c856244baaec1e63232dd08b696544da900927ba56fd686b5899ec1640fbcbb21c8c5ac9581cfde3fcb5c06ccfabd0fd2f181b398da46 SHA512 e8155cdceca2ebefd386feef98223bbdc92d9316f7188d4ba701cf43a723b75a9bf67a1eb92ac80987b7a113a2fb6981ef235292bec7dd3964805b7c33abdbb1
DIST go1.13.5.src.tar.gz 21629437 BLAKE2B c39a52e73136a322a1b6b4ee6888672848ff2b3278d8034ec25b93101fff2b63212d66c065d3d974ca7e8686cba8a9ea9c4fedb23cad51b6cd76adae6db6eb42 SHA512 bc9ddb12855c66dba5fe859bd13b7b3163259b8a8b0d3cbf6892e528ae4c6418c6b4c0d49838e7a5fc2e9f404484899b8f30c45e49e7d30109093025b62ed6c0
DIST go1.13.6.src.tar.gz 21631050 BLAKE2B 8923021d5ff785f5422ee204ee81c986fc066a878a347bc73625974f05045689f694f76147c9bf7956dc59d6e3d3a543f0970e0716df8cd4f6556c28fe23808b SHA512 dffb6e06eea0b1541901dfbed8d28e8cc1eac3184dc40a19ed3637737df796a67a2e7170b228e1003d36b14e6f0f13bb8be9d2a702834a9c06228d1821659528

@ -1,246 +0,0 @@
# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
export CBUILD=${CBUILD:-${CHOST}}
export CTARGET=${CTARGET:-${CHOST}}
MY_PV=${PV/_/}
inherit toolchain-funcs
BOOTSTRAP_VERSION="bootstrap-1.8"
BOOTSTRAP_DIST="https://dev.gentoo.org/~williamh/dist"
BOOTSTRAP_URI="
${BOOTSTRAP_DIST}/go-linux-amd64-${BOOTSTRAP_VERSION}.tbz
${BOOTSTRAP_DIST}/go-linux-arm-${BOOTSTRAP_VERSION}.tbz
${BOOTSTRAP_DIST}/go-linux-arm64-${BOOTSTRAP_VERSION}.tbz
${BOOTSTRAP_DIST}/go-linux-ppc64-${BOOTSTRAP_VERSION}.tbz
${BOOTSTRAP_DIST}/go-linux-ppc64le-${BOOTSTRAP_VERSION}.tbz
${BOOTSTRAP_DIST}/go-linux-s390x-${BOOTSTRAP_VERSION}.tbz
${BOOTSTRAP_DIST}/go-linux-386-${BOOTSTRAP_VERSION}.tbz
${BOOTSTRAP_DIST}/go-freebsd-amd64-${BOOTSTRAP_VERSION}.tbz
${BOOTSTRAP_DIST}/go-freebsd-386-${BOOTSTRAP_VERSION}.tbz
${BOOTSTRAP_DIST}/go-darwin-amd64-${BOOTSTRAP_VERSION}.tbz
${BOOTSTRAP_DIST}/go-solaris-amd64-${BOOTSTRAP_VERSION}.tbz
"
case ${PV} in
*9999*)
EGIT_REPO_URI="https://github.com/golang/go.git"
inherit git-r3
;;
*)
SRC_URI="https://storage.googleapis.com/golang/go${MY_PV}.src.tar.gz "
S="${WORKDIR}"/go
case ${PV} in
*_beta*|*_rc*) ;;
*)
KEYWORDS="-* ~amd64 ~arm ~arm64 ~ppc64 ~s390 ~x86 ~amd64-linux ~x86-linux ~x64-macos ~x64-solaris"
# The upstream tests fail under portage but pass if the build is
# run according to their documentation [1].
# I am restricting the tests on released versions until this is
# solved.
# [1] https://golang.org/issues/18442
RESTRICT="test"
;;
esac
esac
# If gccgo or a previously installed version of dev-lang/go is not being
# used to build Go, there is no way to know the architecture or operating system
# of the build machine, so we need to download all of our bootstrap
# archives to allow this ebuild to work under crossdev.
#
# https://bugs.gentoo.org/671394
SRC_URI+="!gccgo? ( !system-bootstrap? ( ${BOOTSTRAP_URI} ) )"
DESCRIPTION="A concurrent garbage collected and typesafe programming language"
HOMEPAGE="https://golang.org"
LICENSE="BSD"
SLOT="0/${PV}"
IUSE="gccgo system-bootstrap"
BDEPEND="gccgo? ( >=sys-devel/gcc-5[go] )"
RDEPEND="!<dev-go/go-tools-0_pre20150902"
# These test data objects have writable/executable stacks.
QA_EXECSTACK="
usr/lib/go/src/debug/elf/testdata/*.obj
usr/lib/go/src/*.gox
"
# Do not complain about CFLAGS, etc, since Go doesn't use them.
QA_FLAGS_IGNORED='.*'
REQUIRES_EXCLUDE="/usr/lib/go/src/debug/elf/testdata/*"
# The tools in /usr/lib/go should not cause the multilib-strict check to fail.
QA_MULTILIB_PATHS="usr/lib/go/pkg/tool/.*/.*"
# Do not strip this package. Stripping is unsupported upstream and may
# fail.
RESTRICT+=" strip"
DOCS=(
AUTHORS
CONTRIBUTING.md
CONTRIBUTORS
PATENTS
README.md
)
go_arch()
{
# By chance most portage arch names match Go
local portage_arch=$(tc-arch $@)
case "${portage_arch}" in
x86) echo 386;;
x64-*) echo amd64;;
ppc64) [[ $(tc-endian $@) = big ]] && echo ppc64 || echo ppc64le ;;
s390) echo s390x ;;
*) echo "${portage_arch}";;
esac
}
go_arm()
{
case "${1:-${CHOST}}" in
armv5*) echo 5;;
armv6*) echo 6;;
armv7*) echo 7;;
*)
die "unknown GOARM for ${1:-${CHOST}}"
;;
esac
}
go_os()
{
case "${1:-${CHOST}}" in
*-linux*) echo linux;;
*-darwin*) echo darwin;;
*-freebsd*) echo freebsd;;
*-netbsd*) echo netbsd;;
*-openbsd*) echo openbsd;;
*-solaris*) echo solaris;;
*-cygwin*|*-interix*|*-winnt*)
echo windows
;;
*)
die "unknown GOOS for ${1:-${CHOST}}"
;;
esac
}
go_tuple()
{
echo "$(go_os $@)_$(go_arch $@)"
}
go_cross_compile()
{
[[ $(go_tuple ${CBUILD}) != $(go_tuple) ]]
}
pkg_pretend()
{
# make.bash does not understand cross-compiling a cross-compiler
if [[ $(go_tuple) != $(go_tuple ${CTARGET}) ]]; then
die "CHOST CTARGET pair unsupported: CHOST=${CHOST} CTARGET=${CTARGET}"
fi
[[ ${MERGE_TYPE} != binary ]] &&
use system-bootstrap && ! has_version "dev-lang/go" &&
die "dev-lang/go must be installed to use the system-bootstrap use flag"
}
src_unpack()
{
if [[ ${PV} = 9999 ]]; then
git-r3_src_unpack
else
unpack "go${MY_PV}.src.tar.gz"
fi
use gccgo || use system-bootstrap ||
unpack "go-$(go_os ${CBUILD})-$(go_arch ${CBUILD})-${BOOTSTRAP_VERSION}.tbz"
}
src_compile()
{
export GOROOT_BOOTSTRAP="${WORKDIR}"/go-$(go_os ${CBUILD})-$(go_arch ${CBUILD})-bootstrap
if use gccgo; then
mkdir -p "${GOROOT_BOOTSTRAP}/bin" || die
local go_binary=$(gcc-config --get-bin-path)/go-$(gcc-major-version)
[[ -x ${go_binary} ]] || go_binary=$(
find "${EPREFIX}"/usr/${CHOST}/gcc-bin/*/go-$(gcc-major-version) |
sort -V | tail -n1)
[[ -x ${go_binary} ]] ||
die "go-$(gcc-major-version): command not found"
ln -s "${go_binary}" "${GOROOT_BOOTSTRAP}/bin/go" || die
elif use system-bootstrap; then
export GOROOT_BOOTSTRAP="${EPREFIX}"/usr/lib/go
fi
export GOROOT_FINAL="${EPREFIX}"/usr/lib/go
export GOROOT="$(pwd)"
export GOBIN="${GOROOT}/bin"
# Go's build script does not use BUILD/HOST/TARGET consistently. :(
export GOHOSTARCH=$(go_arch ${CBUILD})
export GOHOSTOS=$(go_os ${CBUILD})
export CC=$(tc-getBUILD_CC)
export GOARCH=$(go_arch)
export GOOS=$(go_os)
export CC_FOR_TARGET=$(tc-getCC)
export CXX_FOR_TARGET=$(tc-getCXX)
if [[ ${ARCH} == arm ]]; then
export GOARM=$(go_arm)
fi
cd src
./make.bash || die "build failed"
}
src_test()
{
go_cross_compile && return 0
cd src
PATH="${GOBIN}:${PATH}" \
./run.bash -no-rebuild || die "tests failed"
}
src_install()
{
local bin_path f x
dodir /usr/lib/go
# There is a known issue which requires the source tree to be installed [1].
# Once this is fixed, we can consider using the doc use flag to control
# installing the doc and src directories.
# [1] https://golang.org/issue/2775
#
# deliberately use cp to retain permissions
cp -R api bin doc lib pkg misc src test "${ED}"/usr/lib/go
if go_cross_compile; then
bin_path="bin/$(go_tuple)"
else
bin_path=bin
fi
for x in ${bin_path}/*; do
f=${x##*/}
dosym ../lib/go/${bin_path}/${f} /usr/bin/${f}
done
einstalldocs
if [[ ${CHOST} == *-darwin* ]] ; then
# fix install_name for test object (binutils_test) on Darwin, it
# is never used in real circumstances
local libmac64="${EPREFIX}"/usr/lib/go/src/cmd/vendor/github.com/
libmac64+=google/pprof/internal/binutils/testdata/lib_mac_64
install_name_tool -id "${libmac64}" "${D}${libmac64}"
fi
}

@ -1,246 +0,0 @@
# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
export CBUILD=${CBUILD:-${CHOST}}
export CTARGET=${CTARGET:-${CHOST}}
MY_PV=${PV/_/}
inherit toolchain-funcs
BOOTSTRAP_VERSION="bootstrap-1.8"
BOOTSTRAP_DIST="https://dev.gentoo.org/~williamh/dist"
BOOTSTRAP_URI="
${BOOTSTRAP_DIST}/go-linux-amd64-${BOOTSTRAP_VERSION}.tbz
${BOOTSTRAP_DIST}/go-linux-arm-${BOOTSTRAP_VERSION}.tbz
${BOOTSTRAP_DIST}/go-linux-arm64-${BOOTSTRAP_VERSION}.tbz
${BOOTSTRAP_DIST}/go-linux-ppc64-${BOOTSTRAP_VERSION}.tbz
${BOOTSTRAP_DIST}/go-linux-ppc64le-${BOOTSTRAP_VERSION}.tbz
${BOOTSTRAP_DIST}/go-linux-s390x-${BOOTSTRAP_VERSION}.tbz
${BOOTSTRAP_DIST}/go-linux-386-${BOOTSTRAP_VERSION}.tbz
${BOOTSTRAP_DIST}/go-freebsd-amd64-${BOOTSTRAP_VERSION}.tbz
${BOOTSTRAP_DIST}/go-freebsd-386-${BOOTSTRAP_VERSION}.tbz
${BOOTSTRAP_DIST}/go-darwin-amd64-${BOOTSTRAP_VERSION}.tbz
${BOOTSTRAP_DIST}/go-solaris-amd64-${BOOTSTRAP_VERSION}.tbz
"
case ${PV} in
*9999*)
EGIT_REPO_URI="https://github.com/golang/go.git"
inherit git-r3
;;
*)
SRC_URI="https://storage.googleapis.com/golang/go${MY_PV}.src.tar.gz "
S="${WORKDIR}"/go
case ${PV} in
*_beta*|*_rc*) ;;
*)
KEYWORDS="-* ~amd64 ~arm ~arm64 ~ppc64 ~s390 ~x86 ~amd64-linux ~x86-linux ~x64-macos ~x64-solaris"
# The upstream tests fail under portage but pass if the build is
# run according to their documentation [1].
# I am restricting the tests on released versions until this is
# solved.
# [1] https://golang.org/issues/18442
RESTRICT="test"
;;
esac
esac
# If gccgo or a previously installed version of dev-lang/go is not being
# used to build Go, there is no way to know the architecture or operating system
# of the build machine, so we need to download all of our bootstrap
# archives to allow this ebuild to work under crossdev.
#
# https://bugs.gentoo.org/671394
SRC_URI+="!gccgo? ( !system-bootstrap? ( ${BOOTSTRAP_URI} ) )"
DESCRIPTION="A concurrent garbage collected and typesafe programming language"
HOMEPAGE="https://golang.org"
LICENSE="BSD"
SLOT="0/${PV}"
IUSE="gccgo system-bootstrap"
BDEPEND="gccgo? ( >=sys-devel/gcc-5[go] )"
RDEPEND="!<dev-go/go-tools-0_pre20150902"
# These test data objects have writable/executable stacks.
QA_EXECSTACK="
usr/lib/go/src/debug/elf/testdata/*.obj
usr/lib/go/src/*.gox
"
# Do not complain about CFLAGS, etc, since Go doesn't use them.
QA_FLAGS_IGNORED='.*'
REQUIRES_EXCLUDE="/usr/lib/go/src/debug/elf/testdata/*"
# The tools in /usr/lib/go should not cause the multilib-strict check to fail.
QA_MULTILIB_PATHS="usr/lib/go/pkg/tool/.*/.*"
# Do not strip this package. Stripping is unsupported upstream and may
# fail.
RESTRICT+=" strip"
DOCS=(
AUTHORS
CONTRIBUTING.md
CONTRIBUTORS
PATENTS
README.md
)
go_arch()
{
# By chance most portage arch names match Go
local portage_arch=$(tc-arch $@)
case "${portage_arch}" in
x86) echo 386;;
x64-*) echo amd64;;
ppc64) [[ $(tc-endian $@) = big ]] && echo ppc64 || echo ppc64le ;;
s390) echo s390x ;;
*) echo "${portage_arch}";;
esac
}
go_arm()
{
case "${1:-${CHOST}}" in
armv5*) echo 5;;
armv6*) echo 6;;
armv7*) echo 7;;
*)
die "unknown GOARM for ${1:-${CHOST}}"
;;
esac
}
go_os()
{
case "${1:-${CHOST}}" in
*-linux*) echo linux;;
*-darwin*) echo darwin;;
*-freebsd*) echo freebsd;;
*-netbsd*) echo netbsd;;
*-openbsd*) echo openbsd;;
*-solaris*) echo solaris;;
*-cygwin*|*-interix*|*-winnt*)
echo windows
;;
*)
die "unknown GOOS for ${1:-${CHOST}}"
;;
esac
}
go_tuple()
{
echo "$(go_os $@)_$(go_arch $@)"
}
go_cross_compile()
{
[[ $(go_tuple ${CBUILD}) != $(go_tuple) ]]
}
pkg_pretend()
{
# make.bash does not understand cross-compiling a cross-compiler
if [[ $(go_tuple) != $(go_tuple ${CTARGET}) ]]; then
die "CHOST CTARGET pair unsupported: CHOST=${CHOST} CTARGET=${CTARGET}"
fi
[[ ${MERGE_TYPE} != binary ]] &&
use system-bootstrap && ! has_version "dev-lang/go" &&
die "dev-lang/go must be installed to use the system-bootstrap use flag"
}
src_unpack()
{
if [[ ${PV} = 9999 ]]; then
git-r3_src_unpack
else
unpack "go${MY_PV}.src.tar.gz"
fi
use gccgo || use system-bootstrap ||
unpack "go-$(go_os ${CBUILD})-$(go_arch ${CBUILD})-${BOOTSTRAP_VERSION}.tbz"
}
src_compile()
{
export GOROOT_BOOTSTRAP="${WORKDIR}"/go-$(go_os ${CBUILD})-$(go_arch ${CBUILD})-bootstrap
if use gccgo; then
mkdir -p "${GOROOT_BOOTSTRAP}/bin" || die
local go_binary=$(gcc-config --get-bin-path)/go-$(gcc-major-version)
[[ -x ${go_binary} ]] || go_binary=$(
find "${EPREFIX}"/usr/${CHOST}/gcc-bin/*/go-$(gcc-major-version) |
sort -V | tail -n1)
[[ -x ${go_binary} ]] ||
die "go-$(gcc-major-version): command not found"
ln -s "${go_binary}" "${GOROOT_BOOTSTRAP}/bin/go" || die
elif use system-bootstrap; then
export GOROOT_BOOTSTRAP="${EPREFIX}"/usr/lib/go
fi
export GOROOT_FINAL="${EPREFIX}"/usr/lib/go
export GOROOT="$(pwd)"
export GOBIN="${GOROOT}/bin"
# Go's build script does not use BUILD/HOST/TARGET consistently. :(
export GOHOSTARCH=$(go_arch ${CBUILD})
export GOHOSTOS=$(go_os ${CBUILD})
export CC=$(tc-getBUILD_CC)
export GOARCH=$(go_arch)
export GOOS=$(go_os)
export CC_FOR_TARGET=$(tc-getCC)
export CXX_FOR_TARGET=$(tc-getCXX)
if [[ ${ARCH} == arm ]]; then
export GOARM=$(go_arm)
fi
cd src
./make.bash || die "build failed"
}
src_test()
{
go_cross_compile && return 0
cd src
PATH="${GOBIN}:${PATH}" \
./run.bash -no-rebuild || die "tests failed"
}
src_install()
{
local bin_path f x
dodir /usr/lib/go
# There is a known issue which requires the source tree to be installed [1].
# Once this is fixed, we can consider using the doc use flag to control
# installing the doc and src directories.
# [1] https://golang.org/issue/2775
#
# deliberately use cp to retain permissions
cp -R api bin doc lib pkg misc src test "${ED}"/usr/lib/go
if go_cross_compile; then
bin_path="bin/$(go_tuple)"
else
bin_path=bin
fi
for x in ${bin_path}/*; do
f=${x##*/}
dosym ../lib/go/${bin_path}/${f} /usr/bin/${f}
done
einstalldocs
if [[ ${CHOST} == *-darwin* ]] ; then
# fix install_name for test object (binutils_test) on Darwin, it
# is never used in real circumstances
local libmac64="${EPREFIX}"/usr/lib/go/src/cmd/vendor/github.com/
libmac64+=google/pprof/internal/binutils/testdata/lib_mac_64
install_name_tool -id "${libmac64}" "${D}${libmac64}"
fi
}

@ -1,4 +1,4 @@
# Copyright 1999-2019 Gentoo Authors
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@ -10,20 +10,6 @@ MY_PV=${PV/_/}
inherit toolchain-funcs
BOOTSTRAP_VERSION="bootstrap-1.13.6"
BOOTSTRAP_DIST="https://dev.gentoo.org/~williamh/dist"
BOOTSTRAP_URI="
${BOOTSTRAP_DIST}/go-darwin-amd64-${BOOTSTRAP_VERSION}.tbz
${BOOTSTRAP_DIST}/go-linux-386-${BOOTSTRAP_VERSION}.tbz
${BOOTSTRAP_DIST}/go-linux-amd64-${BOOTSTRAP_VERSION}.tbz
${BOOTSTRAP_DIST}/go-linux-arm64-${BOOTSTRAP_VERSION}.tbz
${BOOTSTRAP_DIST}/go-linux-arm-${BOOTSTRAP_VERSION}.tbz
${BOOTSTRAP_DIST}/go-linux-ppc64-${BOOTSTRAP_VERSION}.tbz
${BOOTSTRAP_DIST}/go-linux-ppc64le-${BOOTSTRAP_VERSION}.tbz
${BOOTSTRAP_DIST}/go-linux-s390x-${BOOTSTRAP_VERSION}.tbz
${BOOTSTRAP_DIST}/go-solaris-amd64-${BOOTSTRAP_VERSION}.tbz
"
case ${PV} in
*9999*)
EGIT_REPO_URI="https://github.com/golang/go.git"
@ -46,22 +32,15 @@ case ${PV} in
esac
esac
# If gccgo or a previously installed version of dev-lang/go is not being
# used to build Go, there is no way to know the architecture or operating system
# of the build machine, so we need to download all of our bootstrap
# archives to allow this ebuild to work under crossdev.
#
# https://bugs.gentoo.org/671394
SRC_URI+="!gccgo? ( !system-bootstrap? ( ${BOOTSTRAP_URI} ) )"
DESCRIPTION="A concurrent garbage collected and typesafe programming language"
HOMEPAGE="https://golang.org"
LICENSE="BSD"
SLOT="0/${PV}"
IUSE="gccgo system-bootstrap"
BDEPEND="gccgo? ( >=sys-devel/gcc-5[go] )"
BDEPEND="|| (
dev-lang/go
dev-lang/go-bootstrap )"
RDEPEND="!<dev-go/go-tools-0_pre20150902"
# These test data objects have writable/executable stacks.
@ -143,43 +122,17 @@ go_cross_compile()
[[ $(go_tuple ${CBUILD}) != $(go_tuple) ]]
}
pkg_pretend()
{
# make.bash does not understand cross-compiling a cross-compiler
if [[ $(go_tuple) != $(go_tuple ${CTARGET}) ]]; then
die "CHOST CTARGET pair unsupported: CHOST=${CHOST} CTARGET=${CTARGET}"
fi
[[ ${MERGE_TYPE} != binary ]] &&
use system-bootstrap && ! has_version -b "dev-lang/go" &&
die "dev-lang/go must be installed to use the system-bootstrap use flag"
}
src_unpack()
src_compile()
{
if [[ ${PV} = 9999 ]]; then
git-r3_src_unpack
if has_version -b dev-lang/go; then
export GOROOT_BOOTSTRAP="${BROOT}/usr/lib/go"
elif has_version -b dev-lang/go-bootstrap; then
export GOROOT_BOOTSTRAP="${BROOT}/usr/lib/go-bootstrap"
else
unpack "go${MY_PV}.src.tar.gz"
eerror "Go cannot be built without go or go-bootstrap installed"
die "Should not be here, please report a bug"
fi
use gccgo || use system-bootstrap ||
unpack "go-$(go_os ${CBUILD})-$(go_arch ${CBUILD})-${BOOTSTRAP_VERSION}.tbz"
}
src_compile()
{
export GOROOT_BOOTSTRAP="${WORKDIR}"/go-$(go_os ${CBUILD})-$(go_arch ${CBUILD})-bootstrap
if use gccgo; then
mkdir -p "${GOROOT_BOOTSTRAP}/bin" || die
local go_binary=$(gcc-config --get-bin-path)/go-$(gcc-major-version)
[[ -x ${go_binary} ]] || go_binary=$(
find "${EPREFIX}"/usr/${CHOST}/gcc-bin/*/go-$(gcc-major-version) |
sort -V | tail -n1)
[[ -x ${go_binary} ]] ||
die "go-$(gcc-major-version): command not found"
ln -s "${go_binary}" "${GOROOT_BOOTSTRAP}/bin/go" || die
elif use system-bootstrap; then
export GOROOT_BOOTSTRAP="${EPREFIX}"/usr/lib/go
fi
export GOROOT_FINAL="${EPREFIX}"/usr/lib/go
export GOROOT="$(pwd)"
export GOBIN="${GOROOT}/bin"

@ -1,4 +1,4 @@
# Copyright 1999-2019 Gentoo Authors
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@ -10,20 +10,6 @@ MY_PV=${PV/_/}
inherit toolchain-funcs
BOOTSTRAP_VERSION="bootstrap-1.13.6"
BOOTSTRAP_DIST="https://dev.gentoo.org/~williamh/dist"
BOOTSTRAP_URI="
${BOOTSTRAP_DIST}/go-darwin-amd64-${BOOTSTRAP_VERSION}.tbz
${BOOTSTRAP_DIST}/go-linux-386-${BOOTSTRAP_VERSION}.tbz
${BOOTSTRAP_DIST}/go-linux-amd64-${BOOTSTRAP_VERSION}.tbz
${BOOTSTRAP_DIST}/go-linux-arm64-${BOOTSTRAP_VERSION}.tbz
${BOOTSTRAP_DIST}/go-linux-arm-${BOOTSTRAP_VERSION}.tbz
${BOOTSTRAP_DIST}/go-linux-ppc64-${BOOTSTRAP_VERSION}.tbz
${BOOTSTRAP_DIST}/go-linux-ppc64le-${BOOTSTRAP_VERSION}.tbz
${BOOTSTRAP_DIST}/go-linux-s390x-${BOOTSTRAP_VERSION}.tbz
${BOOTSTRAP_DIST}/go-solaris-amd64-${BOOTSTRAP_VERSION}.tbz
"
case ${PV} in
*9999*)
EGIT_REPO_URI="https://github.com/golang/go.git"
@ -46,22 +32,15 @@ case ${PV} in
esac
esac
# If gccgo or a previously installed version of dev-lang/go is not being
# used to build Go, there is no way to know the architecture or operating system
# of the build machine, so we need to download all of our bootstrap
# archives to allow this ebuild to work under crossdev.
#
# https://bugs.gentoo.org/671394
SRC_URI+="!gccgo? ( !system-bootstrap? ( ${BOOTSTRAP_URI} ) )"
DESCRIPTION="A concurrent garbage collected and typesafe programming language"
HOMEPAGE="https://golang.org"
LICENSE="BSD"
SLOT="0/${PV}"
IUSE="gccgo system-bootstrap"
BDEPEND="gccgo? ( >=sys-devel/gcc-5[go] )"
BDEPEND="|| (
dev-lang/go
dev-lang/go-bootstrap )"
RDEPEND="!<dev-go/go-tools-0_pre20150902"
# These test data objects have writable/executable stacks.
@ -143,43 +122,17 @@ go_cross_compile()
[[ $(go_tuple ${CBUILD}) != $(go_tuple) ]]
}
pkg_pretend()
{
# make.bash does not understand cross-compiling a cross-compiler
if [[ $(go_tuple) != $(go_tuple ${CTARGET}) ]]; then
die "CHOST CTARGET pair unsupported: CHOST=${CHOST} CTARGET=${CTARGET}"
fi
[[ ${MERGE_TYPE} != binary ]] &&
use system-bootstrap && ! has_version -b "dev-lang/go" &&
die "dev-lang/go must be installed to use the system-bootstrap use flag"
}
src_unpack()
src_compile()
{
if [[ ${PV} = 9999 ]]; then
git-r3_src_unpack
if has_version -b dev-lang/go; then
export GOROOT_BOOTSTRAP="${BROOT}/usr/lib/go"
elif has_version -b dev-lang/go-bootstrap; then
export GOROOT_BOOTSTRAP="${BROOT}/usr/lib/go-bootstrap"
else
unpack "go${MY_PV}.src.tar.gz"
eerror "Go cannot be built without go or go-bootstrap installed"
die "Should not be here, please report a bug"
fi
use gccgo || use system-bootstrap ||
unpack "go-$(go_os ${CBUILD})-$(go_arch ${CBUILD})-${BOOTSTRAP_VERSION}.tbz"
}
src_compile()
{
export GOROOT_BOOTSTRAP="${WORKDIR}"/go-$(go_os ${CBUILD})-$(go_arch ${CBUILD})-bootstrap
if use gccgo; then
mkdir -p "${GOROOT_BOOTSTRAP}/bin" || die
local go_binary=$(gcc-config --get-bin-path)/go-$(gcc-major-version)
[[ -x ${go_binary} ]] || go_binary=$(
find "${EPREFIX}"/usr/${CHOST}/gcc-bin/*/go-$(gcc-major-version) |
sort -V | tail -n1)
[[ -x ${go_binary} ]] ||
die "go-$(gcc-major-version): command not found"
ln -s "${go_binary}" "${GOROOT_BOOTSTRAP}/bin/go" || die
elif use system-bootstrap; then
export GOROOT_BOOTSTRAP="${EPREFIX}"/usr/lib/go
fi
export GOROOT_FINAL="${EPREFIX}"/usr/lib/go
export GOROOT="$(pwd)"
export GOBIN="${GOROOT}/bin"

@ -0,0 +1,59 @@
diff -rdu old/src/luaconf.h new/src/luaconf.h
--- old/src/luaconf.h 2008-02-12 17:00:03.000000000 +0000
+++ new/src/luaconf.h 2008-02-12 17:07:55.000000000 +0000
@@ -340,14 +340,14 @@
** CHANGE it to undefined as soon as your programs use only '...' to
** access vararg parameters (instead of the old 'arg' table).
*/
-#define LUA_COMPAT_VARARG
+#undef LUA_COMPAT_VARARG
/*
@@ LUA_COMPAT_MOD controls compatibility with old math.mod function.
** CHANGE it to undefined as soon as your programs use 'math.fmod' or
** the new '%' operator instead of 'math.mod'.
*/
-#define LUA_COMPAT_MOD
+#undef LUA_COMPAT_MOD
/*
@@ LUA_COMPAT_LSTR controls compatibility with old long string nesting
@@ -355,14 +355,14 @@
** CHANGE it to 2 if you want the old behaviour, or undefine it to turn
** off the advisory error when nesting [[...]].
*/
-#define LUA_COMPAT_LSTR 1
+#undef LUA_COMPAT_LSTR
/*
@@ LUA_COMPAT_GFIND controls compatibility with old 'string.gfind' name.
** CHANGE it to undefined as soon as you rename 'string.gfind' to
** 'string.gmatch'.
*/
-#define LUA_COMPAT_GFIND
+#undef LUA_COMPAT_GFIND
/*
@@ LUA_COMPAT_OPENLIB controls compatibility with old 'luaL_openlib'
@@ -370,7 +370,7 @@
** CHANGE it to undefined as soon as you replace to 'luaL_register'
** your uses of 'luaL_openlib'
*/
-#define LUA_COMPAT_OPENLIB
+#undef LUA_COMPAT_OPENLIB
diff -rdu old/test/sieve.lua new/test/sieve.lua
Rename deprecated functions in test scripts
--- old/test/sieve.lua~ 2002-10-31 03:52:58.000000000 +0100
+++ new/test/sieve.lua 2008-02-20 17:44:22.468281121 +0100
@@ -14,7 +14,7 @@
while 1 do
local n = g()
if n == nil then return end
- if math.mod(n, p) ~= 0 then coroutine.yield(n) end
+ if math.fmod(n, p) ~= 0 then coroutine.yield(n) end
end
end)
end

@ -0,0 +1,118 @@
--- old/Makefile 2012-02-10 10:50:23.000000000 +0100
+++ new/Makefile 2019-07-12 12:00:30.807725876 +0200
@@ -22,7 +22,8 @@
# How to install. If your install program does not support "-p", then you
# may have to run ranlib on the installed liblua.a (do "make ranlib").
-INSTALL= install -p
+INSTALL?= install -p
+INSTALL_LINK= ln -s
INSTALL_EXEC= $(INSTALL) -m 0755
INSTALL_DATA= $(INSTALL) -m 0644
#
@@ -33,7 +34,7 @@
# Utilities.
MKDIR= mkdir -p
-RANLIB= ranlib
+RANLIB?= ranlib
# == END OF USER SETTINGS. NO NEED TO CHANGE ANYTHING BELOW THIS LINE =========
@@ -47,13 +48,17 @@
TO_MAN= lua.1 luac.1
# Lua version and release.
+M= 5
V= 5.1
R= 5.1.5
+# Export to sub-make
+export M R
+
all: $(PLAT)
$(PLATS) clean:
- cd src && $(MAKE) $@
+ cd src && $(MKDIR) .libs && $(MAKE) $@
test: dummy
src/lua test/hello.lua
@@ -61,6 +66,8 @@
install: dummy
cd src && $(MKDIR) $(INSTALL_BIN) $(INSTALL_INC) $(INSTALL_LIB) $(INSTALL_MAN) $(INSTALL_LMOD) $(INSTALL_CMOD)
cd src && $(INSTALL_EXEC) $(TO_BIN) $(INSTALL_BIN)
+ cd src && $(INSTALL_EXEC) $(TO_LIB:.a=.so.$(R)) $(INSTALL_LIB)
+ cd src && $(INSTALL_LINK) $(TO_LIB:.a=.so.$(R)) $(INSTALL_LIB)/$(TO_LIB:.a=.so.$(M))
cd src && $(INSTALL_DATA) $(TO_INC) $(INSTALL_INC)
cd src && $(INSTALL_DATA) $(TO_LIB) $(INSTALL_LIB)
cd doc && $(INSTALL_DATA) $(TO_MAN) $(INSTALL_MAN)
--- old/src/Makefile 2012-02-13 21:41:22.000000000 +0100
+++ new/src/Makefile 2019-07-12 11:31:02.945290602 +0200
@@ -7,12 +7,14 @@
# Your platform. See PLATS for possible values.
PLAT= none
-CC= gcc
-CFLAGS= -O2 -Wall $(MYCFLAGS)
-AR= ar rcu
-RANLIB= ranlib
+CC?= gcc
+CFLAGS?= -O2 -Wall $(MYCFLAGS)
+SOFLAGS= -shared -fPIC -DPIC -Wl,-O1 -Wl,--as-needed -Wl,-soname -Wl,$(LUA_A:.a=.so.$(M)) $(MYLDFLAGS)
+AR?= ar
+ARFLAGS?= rcu
+RANLIB?= ranlib
RM= rm -f
-LIBS= -lm $(MYLIBS)
+LIBS?= -lm $(MYLIBS)
MYCFLAGS=
MYLDFLAGS=
@@ -35,8 +37,11 @@
LUAC_T= luac
LUAC_O= luac.o print.o
-ALL_O= $(CORE_O) $(LIB_O) $(LUA_O) $(LUAC_O)
-ALL_T= $(LUA_A) $(LUA_T) $(LUAC_T)
+LUAS_T= $(LUA_A:.a=.so.$(R))
+LUAS_O= $(addprefix .libs/,$(CORE_O) $(LIB_O) $(LUA_O))
+
+ALL_O= $(CORE_O) $(LIB_O) $(LUA_O) $(LUAC_O) $(LUAS_O)
+ALL_T= $(LUA_A) $(LUA_T) $(LUAC_T) $(LUAS_T)
ALL_A= $(LUA_A)
default: $(PLAT)
@@ -48,9 +53,12 @@
a: $(ALL_A)
$(LUA_A): $(CORE_O) $(LIB_O)
- $(AR) $@ $(CORE_O) $(LIB_O) # DLL needs all object files
+ $(AR) $(ARFLAGS) $@ $(CORE_O) $(LIB_O) # DLL needs all object files
$(RANLIB) $@
+$(LUAS_T): $(LUAS_O)
+ $(CC) -o $@ $(SOFLAGS) $(LUAS_O) $(LIBS)
+
$(LUA_T): $(LUA_O) $(LUA_A)
$(CC) -o $@ $(MYLDFLAGS) $(LUA_O) $(LUA_A) $(LIBS)
@@ -67,7 +75,7 @@
@echo "PLAT = $(PLAT)"
@echo "CC = $(CC)"
@echo "CFLAGS = $(CFLAGS)"
- @echo "AR = $(AR)"
+ @echo "AR = $(AR) $(ARFLAGS)"
@echo "RANLIB = $(RANLIB)"
@echo "RM = $(RM)"
@echo "MYCFLAGS = $(MYCFLAGS)"
@@ -120,6 +128,9 @@
# DO NOT DELETE
+.libs/%o: %c
+ $(CC) $(CFLAGS) -fPIC -DPIC -c -o $@ $<
+
lapi.o: lapi.c lua.h luaconf.h lapi.h lobject.h llimits.h ldebug.h \
lstate.h ltm.h lzio.h lmem.h ldo.h lfunc.h lgc.h lstring.h ltable.h \
lundump.h lvm.h

@ -0,0 +1,17 @@
--- old/src/luaconf.h 2006-04-10 20:27:23.000000000 +0200
+++ new/src/luaconf.h 2006-11-15 14:53:07.000000000 +0100
@@ -36,7 +36,6 @@
#if defined(LUA_USE_LINUX)
#define LUA_USE_POSIX
#define LUA_USE_DLOPEN /* needs an extra library: -ldl */
-#define LUA_USE_READLINE /* needs some extra libraries */
#endif
#if defined(LUA_USE_MACOSX)
--- old/src/Makefile 2012-02-13 21:41:22.000000000 +0100
+++ old/src/Makefile 2019-07-09 09:53:00.000000000 +0100
@@ -98,3 +98,3 @@
linux:
- $(MAKE) all MYCFLAGS=-DLUA_USE_LINUX MYLIBS="-Wl,-E -ldl -lreadline -lhistory -lncurses"
+ $(MAKE) all MYCFLAGS=-DLUA_USE_LINUX MYLIBS="-Wl,-E -ldl"

@ -0,0 +1,145 @@
# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=5
inherit eutils multilib multilib-minimal portability toolchain-funcs versionator
DESCRIPTION="A powerful light-weight programming language designed for extending applications"
HOMEPAGE="http://www.lua.org/"
SRC_URI="http://www.lua.org/ftp/${P}.tar.gz"
LICENSE="MIT"
SLOT="5.1"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
IUSE="+deprecated emacs readline static"
RDEPEND="readline? ( >=sys-libs/readline-6.2_p5-r1:0=[${MULTILIB_USEDEP}] )
app-eselect/eselect-lua
!dev-lang/lua:0"
DEPEND="${RDEPEND}
sys-devel/libtool"
PDEPEND="emacs? ( app-emacs/lua-mode )"
SAN_SLOT="${SLOT//.}"
MULTILIB_WRAPPED_HEADERS=(
/usr/include/lua${SLOT}/luaconf.h
)
src_prepare() {
local PATCH_PV=$(get_version_component_range 1-2)
epatch "${FILESDIR}"/${PN}-${PATCH_PV}-make-r2.patch
epatch "${FILESDIR}"/${PN}-${PATCH_PV}-module_paths.patch
# use glibtool on Darwin (versus Apple libtool)
if [[ ${CHOST} == *-darwin* ]] ; then
sed -i -e '/LIBTOOL = /s:libtool:glibtool:' \
Makefile src/Makefile || die
fi
#EPATCH_SOURCE="${FILESDIR}/${PV}" EPATCH_SUFFIX="upstream.patch" epatch
# correct lua versioning
sed -i -e 's/\(LIB_VERSION = \)6:1:1/\16:5:1/' src/Makefile
sed -i -e 's:\(/README\)\("\):\1.gz\2:g' doc/readme.html
if ! use deprecated ; then
# patches from 5.1.4 still apply
epatch "${FILESDIR}"/${PN}-5.1.4-deprecated.patch
epatch "${FILESDIR}"/${PN}-5.1.4-test.patch
fi
if ! use readline ; then
epatch "${FILESDIR}"/${PN}-${PATCH_PV}-readline.patch
fi
# Using dynamic linked lua is not recommended for performance
# reasons. http://article.gmane.org/gmane.comp.lang.lua.general/18519
# Mainly, this is of concern if your arch is poor with GPRs, like x86
# Note that this only affects the interpreter binary (named lua), not the lua
# compiler (built statically) nor the lua libraries (both shared and static
# are installed)
if use static ; then
epatch "${FILESDIR}"/${PN}-${PATCH_PV}-make_static-r1.patch
fi
# A slotted Lua uses different directories for headers & names for
# libraries, and pkgconfig should reflect that.
sed -r -i \
-e "/^INSTALL_INC=/s,(/include)$,\1/lua${SLOT}," \
-e "/^Libs:/s,((-llua)($| )),\2${SLOT}\3," \
-e "/^Cflags:/s,((-I..includedir.)($| )),\2/lua${SLOT}\3," \
"${S}"/etc/lua.pc
# custom Makefiles
multilib_copy_sources
}
multilib_src_configure() {
# We want packages to find our things...
sed -i \
-e 's:/usr/local:'${EPREFIX}'/usr:' \
-e "s:\([/\"]\)\<lib\>:\1$(get_libdir):g" \
etc/lua.pc src/luaconf.h || die
}
multilib_src_compile() {
tc-export CC
myflags=
# what to link to liblua
liblibs="-lm"
liblibs="${liblibs} $(dlopen_lib)"
# what to link to the executables
mylibs=
if use readline; then
mylibs="-lreadline"
fi
cd src
emake CC="${CC}" CFLAGS="-DLUA_USE_LINUX ${CFLAGS}" \
RPATH="${EPREFIX}/usr/$(get_libdir)/" \
LUA_LIBS="${mylibs}" \
LIB_LIBS="${liblibs}" \
V=$(get_version_component_range 1-2) \
gentoo_all
mv lua_test ../test/lua.static
}
multilib_src_install() {
emake INSTALL_TOP="${ED}/usr" INSTALL_LIB="${ED}/usr/$(get_libdir)" \
V=${SLOT} gentoo_install
insinto /usr/$(get_libdir)/pkgconfig
newins etc/lua.pc lua${SLOT}.pc
}
multilib_src_install_all() {
dodoc HISTORY README
dohtml doc/*.html doc/*.png doc/*.css doc/*.gif
doicon etc/lua.ico
newman doc/lua.1 lua${SLOT}.1
newman doc/luac.1 luac${SLOT}.1
}
multilib_src_test() {
local positive="bisect cf echo env factorial fib fibfor hello printf sieve
sort trace-calls trace-globals"
local negative="readonly"
local test
cd "${BUILD_DIR}" || die
for test in ${positive}; do
test/lua.static test/${test}.lua || die "test $test failed"
done
for test in ${negative}; do
test/lua.static test/${test}.lua && die "test $test failed"
done
}

@ -0,0 +1,113 @@
# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
inherit eutils multilib multilib-minimal portability toolchain-funcs versionator flag-o-matic
DESCRIPTION="A powerful light-weight programming language designed for extending applications"
HOMEPAGE="http://www.lua.org/"
SRC_URI="http://www.lua.org/ftp/${P}.tar.gz"
LICENSE="MIT"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
IUSE="+deprecated emacs readline doc"
RDEPEND="readline? ( >=sys-libs/readline-6.2_p5-r1:0=[${MULTILIB_USEDEP}] )"
DEPEND="${RDEPEND}"
PDEPEND="emacs? ( app-emacs/lua-mode )"
MULTILIB_WRAPPED_HEADERS=(
/usr/include/luaconf.h
)
src_prepare() {
# Correct documentation link
sed -i -e 's:\(/README\)\("\):\1.gz\2:g' doc/readme.html || die
# Using dynamic linked lua is not recommended for performance
# reasons. http://article.gmane.org/gmane.comp.lang.lua.general/18519
# Mainly, this is of concern if your arch is poor with GPRs, like x86.
# Therefore both lua interpreter and compiler are statically linked to
# the core library modules.
# Note: This patch only adds the required targets to the makefiles
# instead of relying upon libtool, which fails cross-compiling. Both
# shared and static versions of lua libraries are installed.
epatch "${FILESDIR}"/${P}-gentoo-build.patch
# Rename deprecated functions in scripts
use deprecated || epatch "${FILESDIR}"/${P}-disable-deprecated.patch
# Remove readline dependency if not requested
use readline || epatch "${FILESDIR}"/${P}-disable-readline.patch
epatch "${FILESDIR}/${P}-fix_vararg_calls.patch"
# Required by EAPI >= 6
eapply_user
# Add documentation URIs if needed
use doc && \
HTML_DOCS=( doc/*.{html,css,png,gif} ) && \
DOCS="HISTORY README"
# custom Makefiles
multilib_copy_sources
}
multilib_src_configure() {
# Fix directories according to FHS/Gentoo policy paths and ABI
sed -i \
-e 's:/usr/local:'${EPREFIX}'/usr:' \
-e 's:/man/:/share/man/:' \
-e "s:\([/\"]\)\<lib\>:\1$(get_libdir):g" \
Makefile etc/lua.pc src/luaconf.h doc/manual.html || die
}
multilib_src_compile() {
append-cflags "-DLUA_USE_LINUX"
append-ldflags "-Wl,-E"
tc-export AR CC CPP LD RANLIB
emake \
MYLDFLAGS="${LDFLAGS}" \
MYCFLAGS="${CFLAGS}" \
linux
}
multilib_src_install() {
emake -j1 install INSTALL_TOP="${ED}/usr"
insinto usr/$(get_libdir)/pkgconfig
doins etc/lua.pc
}
multilib_src_install_all() {
einstalldocs -r
doicon etc/lua.ico
doman doc/lua.1 doc/luac.1
}
multilib_src_test() {
# These tests MUST succeed for the ebuild to succeed
local MUST_SUCCEED="bisect cf echo env factorial fib fibfor hello printf sieve
sort trace-calls trace-globals"
# These tests MUST fail for the ebuild to succeed
local MUST_FAIL="readonly"
cd "${BUILD_DIR}" || die
local test
for test in ${MUST_SUCCEED}; do
src/lua test/${test}.lua || die "test $test failed"
done
for test in ${MUST_FAIL}; do
src/lua test/${test}.lua && die "test $test failed"
done
}

@ -0,0 +1,194 @@
# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=5
inherit eutils autotools multilib multilib-minimal portability toolchain-funcs versionator
DESCRIPTION="A powerful light-weight programming language designed for extending applications"
HOMEPAGE="http://www.lua.org/"
TEST_PV="5.2.2" # no 5.2.3-specific release yet
TEST_A="${PN}-${TEST_PV}-tests.tar.gz"
PKG_A="${P}.tar.gz"
SRC_URI="
http://www.lua.org/ftp/${PKG_A}
test? ( https://www.lua.org/tests/${TEST_A} )"
LICENSE="MIT"
SLOT="5.2"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
IUSE="+deprecated emacs readline static test test-complete"
RESTRICT="!test? ( test )"
RDEPEND="readline? ( sys-libs/readline:0= )
app-eselect/eselect-lua
!dev-lang/lua:0"
DEPEND="${RDEPEND}
sys-devel/libtool"
PDEPEND="emacs? ( app-emacs/lua-mode )"
MULTILIB_WRAPPED_HEADERS=(
/usr/include/lua${SLOT}/luaconf.h
)
src_prepare() {
local PATCH_PV=$(get_version_component_range 1-2)
epatch "${FILESDIR}"/${PN}-${PATCH_PV}-make-r1.patch
# use glibtool on Darwin (versus Apple libtool)
if [[ ${CHOST} == *-darwin* ]] ; then
sed -i -e '/LIBTOOL = /s:/libtool:/glibtool:' \
Makefile src/Makefile || die
fi
[ -d "${FILESDIR}/${PV}" ] && \
EPATCH_SOURCE="${FILESDIR}/${PV}" EPATCH_SUFFIX="upstream.patch" epatch
# correct lua versioning
sed -i -e 's/\(LIB_VERSION = \)6:1:1/\10:0:0/' src/Makefile || die
sed -i -e 's:\(/README\)\("\):\1.gz\2:g' doc/readme.html || die
if ! use readline ; then
sed -i -e '/#define LUA_USE_READLINE/d' src/luaconf.h || die
fi
# Using dynamic linked lua is not recommended for performance
# reasons. http://article.gmane.org/gmane.comp.lang.lua.general/18519
# Mainly, this is of concern if your arch is poor with GPRs, like x86
# Note that this only affects the interpreter binary (named lua), not the lua
# compiler (built statically) nor the lua libraries (both shared and static
# are installed)
if use static ; then
sed -i -e 's:\(-export-dynamic\):-static \1:' src/Makefile || die
fi
# upstream does not use libtool, but we do (see bug #336167)
cp "${FILESDIR}/configure.in" "${S}/configure.ac" || die
eautoreconf
# custom Makefiles
multilib_copy_sources
}
multilib_src_configure() {
sed -i \
-e 's:\(define LUA_ROOT\s*\).*:\1"'${EPREFIX}'/usr/":' \
-e "s:\(define LUA_CDIR\s*LUA_ROOT \"\)lib:\1$(get_libdir):" \
src/luaconf.h \
|| die "failed patching luaconf.h"
econf
}
multilib_src_compile() {
tc-export CC
# what to link to liblua
liblibs="-lm"
liblibs="${liblibs} $(dlopen_lib)"
# what to link to the executables
mylibs=
use readline && mylibs="-lreadline"
cd src
local myCFLAGS=""
use deprecated && myCFLAGS="-DLUA_COMPAT_ALL"
case "${CHOST}" in
*-mingw*) : ;;
*) myCFLAGS+=" -DLUA_USE_LINUX" ;;
esac
emake CC="${CC}" CFLAGS="${myCFLAGS} ${CFLAGS}" \
SYSLDFLAGS="${LDFLAGS}" \
RPATH="${EPREFIX}/usr/$(get_libdir)/" \
LUA_LIBS="${mylibs}" \
LIB_LIBS="${liblibs}" \
V=$(get_version_component_range 1-2) \
gentoo_all
}
multilib_src_install() {
emake INSTALL_TOP="${ED}/usr" INSTALL_LIB="${ED}/usr/$(get_libdir)" \
V=${SLOT} gentoo_install
case $SLOT in
0)
LIBNAME="lua"
INCLUDEDIR_SUFFIX=''
;;
*) LIBNAME="lua${SLOT}"
INCLUDEDIR_SUFFIX="/lua${SLOT}"
;;
esac
# We want packages to find our things...
# A slotted Lua uses different directories for headers & names for
# libraries, and pkgconfig should reflect that.
local PATCH_PV=$(get_version_component_range 1-2)
cp "${FILESDIR}/lua.pc" "${WORKDIR}" || die
sed -r -i \
-e "/^INSTALL_INC=/s,(/include)$,\1/lua${SLOT}," \
-e "s:^prefix= :prefix= ${EPREFIX}:" \
-e "s:^V=.*:V= ${PATCH_PV}:" \
-e "s:^R=.*:R= ${PV}:" \
-e "s:/,lib,:/$(get_libdir):g" \
-e "/^Libs:/s:( )(-llua)($| ):\1-l${LIBNAME}\3:" \
-e "/^includedir=/s:include$:include${INCLUDEDIR_SUFFIX}:" \
"${WORKDIR}/lua.pc" || die
insinto "/usr/$(get_libdir)/pkgconfig"
newins "${WORKDIR}/lua.pc" "lua${SLOT}.pc"
# Copy Debian's symlink support:
# https://salsa.debian.org/lua-team/lua5.3/blob/master/debian/rules#L19
# FreeBSD calls the pkgconfig 'lua-5.3.pc'
# Older systems called it 'lua53.pc'
dosym "lua${SLOT}.pc" "/usr/$(get_libdir)/pkgconfig/lua-${SLOT}.pc"
dosym "lua${SLOT}.pc" "/usr/$(get_libdir)/pkgconfig/lua${SLOT/.}.pc"
}
multilib_src_install_all() {
dodoc README
dohtml doc/*.html doc/*.png doc/*.css doc/*.gif
newman doc/lua.1 lua${SLOT}.1
newman doc/luac.1 luac${SLOT}.1
}
# Makefile contains a dummy target that doesn't do tests
# but causes issues with slotted lua (bug #510360)
src_test() {
debug-print-function ${FUNCNAME} "$@"
cd "${WORKDIR}/lua-${TEST_PV}-tests" || die
# https://www.lua.org/tests/
# There are two sets:
# basic
# complete.
#
# The basic subset is selected by passing -e'_U=true'
# The complete set is noted to contain tests that may consume too much memory or have non-portable tests.
# attrib.lua for example needs some multilib customization (have to compile the stuff in libs/ for each ABI)
use test-complete || TEST_OPTS="-e_U=true"
TEST_MARKER="${T}/test.failed"
rm -f "${TEST_MARKER}"
# If we are failing, set the marker file, and only check it after done all ABIs
abi_src_test() {
debug-print-function ${FUNCNAME} "$@"
TEST_LOG="${T}/test.${MULTIBUILD_ID}.log"
eval "${BUILD_DIR}"/src/lua${SLOT} ${TEST_OPTS} all.lua 2>&1 | tee "${TEST_LOG}" || die
grep -sq -e "final OK" "${TEST_LOG}" || echo "FAIL ${MULTIBUILD_ID}" >>"${TEST_MARKER}"
return 0
}
multilib_foreach_abi abi_src_test
if [ -e "${TEST_MARKER}" ]; then
cat "${TEST_MARKER}"
die "Tests failed"
fi
}

@ -0,0 +1,194 @@
# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=5
inherit eutils autotools multilib multilib-minimal portability toolchain-funcs versionator
DESCRIPTION="A powerful light-weight programming language designed for extending applications"
HOMEPAGE="http://www.lua.org/"
TEST_PV="5.3.4" # no 5.3.5-specific release yet
TEST_A="${PN}-${TEST_PV}-tests.tar.gz"
PKG_A="${P}.tar.gz"
SRC_URI="
http://www.lua.org/ftp/${PKG_A}
test? ( https://www.lua.org/tests/${TEST_A} )"
LICENSE="MIT"
SLOT="5.3"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
IUSE="+deprecated emacs readline static test test-complete"
RESTRICT="!test? ( test )"
RDEPEND="readline? ( sys-libs/readline:0= )
app-eselect/eselect-lua
!dev-lang/lua:0"
DEPEND="${RDEPEND}
sys-devel/libtool"
PDEPEND="emacs? ( app-emacs/lua-mode )"
MULTILIB_WRAPPED_HEADERS=(
/usr/include/lua${SLOT}/luaconf.h
)
src_prepare() {
local PATCH_PV=$(get_version_component_range 1-2)
epatch "${FILESDIR}"/${PN}-${PATCH_PV}-make-r1.patch
# use glibtool on Darwin (versus Apple libtool)
if [[ ${CHOST} == *-darwin* ]] ; then
sed -i -e '/LIBTOOL = /s:/libtool:/glibtool:' \
Makefile src/Makefile || die
fi
[ -d "${FILESDIR}/${PV}" ] && \
EPATCH_SOURCE="${FILESDIR}/${PV}" EPATCH_SUFFIX="upstream.patch" epatch
# correct lua versioning
sed -i -e 's/\(LIB_VERSION = \)6:1:1/\10:0:0/' src/Makefile || die
sed -i -e 's:\(/README\)\("\):\1.gz\2:g' doc/readme.html || die
if ! use readline ; then
sed -i -e '/#define LUA_USE_READLINE/d' src/luaconf.h || die
fi
# Using dynamic linked lua is not recommended for performance
# reasons. http://article.gmane.org/gmane.comp.lang.lua.general/18519
# Mainly, this is of concern if your arch is poor with GPRs, like x86
# Note that this only affects the interpreter binary (named lua), not the lua
# compiler (built statically) nor the lua libraries (both shared and static
# are installed)
if use static ; then
sed -i -e 's:\(-export-dynamic\):-static \1:' src/Makefile || die
fi
# upstream does not use libtool, but we do (see bug #336167)
cp "${FILESDIR}/configure.in" "${S}/configure.ac" || die
eautoreconf
# custom Makefiles
multilib_copy_sources
}
multilib_src_configure() {
sed -i \
-e 's:\(define LUA_ROOT\s*\).*:\1"'${EPREFIX}'/usr/":' \
-e "s:\(define LUA_CDIR\s*LUA_ROOT \"\)lib:\1$(get_libdir):" \
src/luaconf.h \
|| die "failed patching luaconf.h"
econf
}
multilib_src_compile() {
tc-export CC
# what to link to liblua
liblibs="-lm"
liblibs="${liblibs} $(dlopen_lib)"
# what to link to the executables
mylibs=
use readline && mylibs="-lreadline"
cd src
local myCFLAGS=""
use deprecated && myCFLAGS="-DLUA_COMPAT_ALL"
case "${CHOST}" in
*-mingw*) : ;;
*) myCFLAGS+=" -DLUA_USE_LINUX" ;;
esac
emake CC="${CC}" CFLAGS="${myCFLAGS} ${CFLAGS}" \
SYSLDFLAGS="${LDFLAGS}" \
RPATH="${EPREFIX}/usr/$(get_libdir)/" \
LUA_LIBS="${mylibs}" \
LIB_LIBS="${liblibs}" \
V=$(get_version_component_range 1-2) \
gentoo_all
}
multilib_src_install() {
emake INSTALL_TOP="${ED}/usr" INSTALL_LIB="${ED}/usr/$(get_libdir)" \
V=${SLOT} gentoo_install
case $SLOT in
0)
LIBNAME="lua"
INCLUDEDIR_SUFFIX=''
;;
*) LIBNAME="lua${SLOT}"
INCLUDEDIR_SUFFIX="/lua${SLOT}"
;;
esac
# We want packages to find our things...
# A slotted Lua uses different directories for headers & names for
# libraries, and pkgconfig should reflect that.
local PATCH_PV=$(get_version_component_range 1-2)
cp "${FILESDIR}/lua.pc" "${WORKDIR}" || die
sed -r -i \
-e "/^INSTALL_INC=/s,(/include)$,\1/lua${SLOT}," \
-e "s:^prefix= :prefix= ${EPREFIX}:" \
-e "s:^V=.*:V= ${PATCH_PV}:" \
-e "s:^R=.*:R= ${PV}:" \
-e "s:/,lib,:/$(get_libdir):g" \
-e "/^Libs:/s:( )(-llua)($| ):\1-l${LIBNAME}\3:" \
-e "/^includedir=/s:include$:include${INCLUDEDIR_SUFFIX}:" \
"${WORKDIR}/lua.pc" || die
insinto "/usr/$(get_libdir)/pkgconfig"
newins "${WORKDIR}/lua.pc" "lua${SLOT}.pc"
# Copy Debian's symlink support:
# https://salsa.debian.org/lua-team/lua5.3/blob/master/debian/rules#L19
# FreeBSD calls the pkgconfig 'lua-5.3.pc'
# Older systems called it 'lua53.pc'
dosym "lua${SLOT}.pc" "/usr/$(get_libdir)/pkgconfig/lua-${SLOT}.pc"
dosym "lua${SLOT}.pc" "/usr/$(get_libdir)/pkgconfig/lua${SLOT/.}.pc"
}
multilib_src_install_all() {
dodoc README
dohtml doc/*.html doc/*.png doc/*.css doc/*.gif
newman doc/lua.1 lua${SLOT}.1
newman doc/luac.1 luac${SLOT}.1
}
# Makefile contains a dummy target that doesn't do tests
# but causes issues with slotted lua (bug #510360)
src_test() {
debug-print-function ${FUNCNAME} "$@"
cd "${WORKDIR}/lua-${TEST_PV}-tests" || die
# https://www.lua.org/tests/
# There are two sets:
# basic
# complete.
#
# The basic subset is selected by passing -e'_U=true'
# The complete set is noted to contain tests that may consume too much memory or have non-portable tests.
# attrib.lua for example needs some multilib customization (have to compile the stuff in libs/ for each ABI)
use test-complete || TEST_OPTS="-e_U=true"
TEST_MARKER="${T}/test.failed"
rm -f "${TEST_MARKER}"
# If we are failing, set the marker file, and only check it after done all ABIs
abi_src_test() {
debug-print-function ${FUNCNAME} "$@"
TEST_LOG="${T}/test.${MULTIBUILD_ID}.log"
eval "${BUILD_DIR}"/src/lua${SLOT} ${TEST_OPTS} all.lua 2>&1 | tee "${TEST_LOG}" || die
grep -sq -e "final OK" "${TEST_LOG}" || echo "FAIL ${MULTIBUILD_ID}" >>"${TEST_MARKER}"
return 0
}
multilib_foreach_abi abi_src_test
if [ -e "${TEST_MARKER}" ]; then
cat "${TEST_MARKER}"
die "Tests failed"
fi
}

@ -1,4 +1,6 @@
DIST php-7.1.33.tar.xz 12370228 BLAKE2B 610f501c1729ca3f5fa6f104b9f229046cf1e497f2fdc1194b80b4a5f9ca7f799dc6a458de34dd7a87976b7252ba2f548a8d689e4b2a45c025f1807ab8489f12 SHA512 ed37a79e3402c767f20e55c1cbe27957cc78240eafc719fffccd7d29ae10a45112aa0f29082f56133cd9c25f2750e9e57246d95b4f38d766f49bd29d1397eb1d
DIST php-7.2.26.tar.xz 12309176 BLAKE2B 2208aee696fc2aed50b4f08f2dd7ca0f70d9913c22091687f6c694a343e4b5fd5e1f0d0b6b127fe0c00c5611cb60e627c2257a1fad9bff6e9fc8bb921e1eb57d SHA512 457e3420120135e311a22cd11529d5a3efc5885af4f298196f403093141801619d4dcdb38d6a4a5f8d9dcfa619688d8fdf33fea4a30e2d885e987b739a268f12
DIST php-7.2.27.tar.xz 12307512 BLAKE2B 8d51a1a88c718ba9ef683e190f9ed80b46fccfc7b237d9175f5db3012a3d4ae8f698dbe6b2b8f233121be6d08e28bdb1062a357dd6ae2df5228a7e56c8604807 SHA512 02416e2bdfcd47ef660c7403ca25c7358c2f9a685b1dee6a2a95c52d1b1178666f9fa0bb32dc070cfd09febb5c44ecdb70116546142369d7ead4432634dc38c5
DIST php-7.3.13.tar.xz 12102012 BLAKE2B 32a346470ea0d0a3db873ae94b5e4dcc650c25e24db244ea94417f092e0458a0825cb99e9c3429000ee5cbd50120824d9bd2a58a7ed2ada1f39c6d7c41b2ba08 SHA512 d0624b3b841fed49d9cea56b17e7c8c7abf8e6572832b6f86c98f48c23f86690c310b460eae27a6fcd41fbfbc2e8a4b56f6bfb0c738fa1db36ce3795454d7798
DIST php-7.3.14.tar.xz 12106072 BLAKE2B 698e6cfe4cc9640c393988626bf344a4bc891cb6d974017a0a176d2c5f6f55cc6073f88bd90926822c7c0534da280a6ae6b8f28b3c983665d7ce8b330246e783 SHA512 053cd51d0fe73e18494d51c104573b73f6af41d21091513319e994cc12398fa792b7d996414d28d6dbf983c38afccc92d47d6fd8c071824ee192067bd955a80a
DIST php-7.4.1.tar.xz 10245600 BLAKE2B fcbb7de0e9ab74820ca8fdd234cd20908ed8e559e6eeffd576e285a5f4b4b31506ec2e11cc5926464257e08289207462f4b373833b8130500e0944f64dbf6cf5 SHA512 2dd152bdca52ece160feff799622fd4bdd88e0664f629e6149fd14ede6c304dfc40c164fcd9200c041b26342d6248010cf9b53e30c1a8d31640dc3b24d25c4da
DIST php-7.4.2.tar.xz 10252304 BLAKE2B cf3b7a6a26ff58fb46024710c9d265d440faff4c5ee583a76c89aa7a73049c8bc6eaf428f53dfbdbb86efef9208503150c9c31b442f960d167babf08380813cf SHA512 e8d4b300d71e48a740b4cd96bf100206615a352bf77822dfe4a289b93738e3419f1371f2b1ec2eb9c9c4b9c87eac69c866a4c51a821e0f5b07a2fa3b0eb8d89b

@ -1,379 +0,0 @@
Based on the following upstream commits:
https://github.com/php/php-src/commit/8d35a423838eb462cd39ee535c5d003073cc5f22
https://github.com/php/php-src/commit/d8200e48857aeaf09f7127751efc5632ef7660a7
https://github.com/php/php-src/commit/9a8e7b571896f39f83cb000fdb7c466b6d328d52
--- a/ext/intl/breakiterator/breakiterator_class.cpp
+++ b/ext/intl/breakiterator/breakiterator_class.cpp
@@ -38,6 +38,7 @@ extern "C" {
}
using PHP::CodePointBreakIterator;
+using icu::RuleBasedBreakIterator;
/* {{{ Global variables */
zend_class_entry *BreakIterator_ce_ptr;
--- a/ext/intl/breakiterator/breakiterator_class.h
+++ b/ext/intl/breakiterator/breakiterator_class.h
@@ -26,6 +26,8 @@
#ifndef USE_BREAKITERATOR_POINTER
typedef void BreakIterator;
+#else
+using icu::BreakIterator;
#endif
typedef struct {
--- a/ext/intl/breakiterator/breakiterator_methods.cpp
+++ b/ext/intl/breakiterator/breakiterator_methods.cpp
@@ -32,6 +32,8 @@ extern "C" {
}
using PHP::CodePointBreakIterator;
+using icu::BreakIterator;
+using icu::Locale;
U_CFUNC PHP_METHOD(BreakIterator, __construct)
{
--- a/ext/intl/breakiterator/codepointiterator_internal.cpp
+++ b/ext/intl/breakiterator/codepointiterator_internal.cpp
@@ -33,6 +33,8 @@ typedef union {
using namespace PHP;
+using icu::UCharCharacterIterator;
+
UOBJECT_DEFINE_RTTI_IMPLEMENTATION(CodePointBreakIterator);
CodePointBreakIterator::CodePointBreakIterator()
--- a/ext/intl/breakiterator/codepointiterator_internal.h
+++ b/ext/intl/breakiterator/codepointiterator_internal.h
@@ -18,8 +18,11 @@
#define CODEPOINTITERATOR_INTERNAL_H
#include <unicode/brkiter.h>
+#include <unicode/unistr.h>
-using U_ICU_NAMESPACE::BreakIterator;
+using icu::BreakIterator;
+using icu::CharacterIterator;
+using icu::UnicodeString;
namespace PHP {
--- a/ext/intl/breakiterator/rulebasedbreakiterator_methods.cpp
+++ b/ext/intl/breakiterator/rulebasedbreakiterator_methods.cpp
@@ -26,6 +26,9 @@ extern "C" {
#include "../intl_convertcpp.h"
#include "../intl_common.h"
+using icu::RuleBasedBreakIterator;
+using icu::Locale;
+
static inline RuleBasedBreakIterator *fetch_rbbi(BreakIterator_object *bio) {
return (RuleBasedBreakIterator*)bio->biter;
}
--- a/ext/intl/calendar/calendar_class.cpp
+++ b/ext/intl/calendar/calendar_class.cpp
@@ -34,6 +34,9 @@ extern "C" {
#include <assert.h>
}
+using icu::GregorianCalendar;
+using icu::Locale;
+
/* {{{ Global variables */
zend_class_entry *Calendar_ce_ptr;
zend_class_entry *GregorianCalendar_ce_ptr;
--- a/ext/intl/calendar/calendar_class.h
+++ b/ext/intl/calendar/calendar_class.h
@@ -26,6 +26,8 @@
#ifndef USE_CALENDAR_POINTER
typedef void Calendar;
+#else
+using icu::Calendar;
#endif
typedef struct {
--- a/ext/intl/calendar/calendar_methods.cpp
+++ b/ext/intl/calendar/calendar_methods.cpp
@@ -40,6 +40,8 @@ extern "C" {
}
#include "../common/common_enum.h"
+using icu::Locale;
+
U_CFUNC PHP_METHOD(IntlCalendar, __construct)
{
zend_throw_exception( NULL,
--- a/ext/intl/calendar/gregoriancalendar_methods.cpp
+++ b/ext/intl/calendar/gregoriancalendar_methods.cpp
@@ -23,6 +23,8 @@
#include <unicode/locid.h>
#include <unicode/calendar.h>
#include <unicode/gregocal.h>
+#include <unicode/ustring.h>
+
extern "C" {
#include "../php_intl.h"
#include "../intl_common.h"
@@ -34,6 +36,11 @@ extern "C" {
#include "zend_exceptions.h"
}
+using icu::GregorianCalendar;
+using icu::Locale;
+using icu::UnicodeString;
+using icu::StringPiece;
+
static inline GregorianCalendar *fetch_greg(Calendar_object *co) {
return (GregorianCalendar*)co->ucal;
}
--- a/ext/intl/common/common_date.cpp
+++ b/ext/intl/common/common_date.cpp
@@ -25,6 +25,9 @@ extern "C" {
#include <ext/date/php_date.h>
}
+using icu::TimeZone;
+using icu::UnicodeString;
+
#ifndef INFINITY
#define INFINITY (DBL_MAX+DBL_MAX)
#endif
--- a/ext/intl/common/common_date.h
+++ b/ext/intl/common/common_date.h
@@ -28,6 +28,8 @@ U_CDECL_END
#include <unicode/timezone.h>
+using icu::TimeZone;
+
U_CFUNC TimeZone *timezone_convert_datetimezone(int type, void *object, int is_datetime, intl_error *outside_error, const char *func);
U_CFUNC int intl_datetime_decompose(zval *z, double *millis, TimeZone **tz,
intl_error *err, const char *func);
--- a/ext/intl/common/common_enum.h
+++ b/ext/intl/common/common_enum.h
@@ -75,6 +75,7 @@ U_CFUNC zval *zoi_with_current_get_current_data(zend_object_iterator *iter);
U_CFUNC void zoi_with_current_invalidate_current(zend_object_iterator *iter);
#ifdef __cplusplus
+using icu::StringEnumeration;
U_CFUNC void IntlIterator_from_StringEnumeration(StringEnumeration *se, zval *object);
#endif
--- a/ext/intl/converter/converter.c
+++ b/ext/intl/converter/converter.c
@@ -18,6 +18,8 @@
#include "zend_exceptions.h"
#include <unicode/utypes.h>
+#include <unicode/utf8.h>
+#include <unicode/utf16.h>
#include <unicode/ucnv.h>
#include <unicode/ustring.h>
--- a/ext/intl/dateformat/dateformat_format_object.cpp
+++ b/ext/intl/dateformat/dateformat_format_object.cpp
@@ -33,6 +33,12 @@ extern "C" {
#include "../common/common_date.h"
}
+using icu::Locale;
+using icu::DateFormat;
+using icu::GregorianCalendar;
+using icu::StringPiece;
+using icu::SimpleDateFormat;
+
static const DateFormat::EStyle valid_styles[] = {
DateFormat::kNone,
DateFormat::kFull,
--- a/ext/intl/dateformat/dateformat_helpers.cpp
+++ b/ext/intl/dateformat/dateformat_helpers.cpp
@@ -28,6 +28,8 @@ extern "C" {
#include "../calendar/calendar_class.h"
}
+using icu::GregorianCalendar;
+
int datefmt_process_calendar_arg(zval* calendar_zv,
Locale const& locale,
const char *func_name,
--- a/ext/intl/dateformat/dateformat_helpers.h
+++ b/ext/intl/dateformat/dateformat_helpers.h
@@ -22,11 +22,16 @@
#endif
#include <unicode/calendar.h>
+#include <unicode/datefmt.h>
extern "C" {
#include "../php_intl.h"
}
+using icu::Locale;
+using icu::Calendar;
+using icu::DateFormat;
+
int datefmt_process_calendar_arg(zval* calendar_zv,
Locale const& locale,
const char *func_name,
--- a/ext/intl/grapheme/grapheme_string.c
+++ b/ext/intl/grapheme/grapheme_string.c
@@ -24,6 +24,7 @@
#include "grapheme_util.h"
#include <unicode/utypes.h>
+#include <unicode/utf8.h>
#include <unicode/ucol.h>
#include <unicode/ustring.h>
#include <unicode/ubrk.h>
@@ -835,10 +836,10 @@ PHP_FUNCTION(grapheme_extract)
pstr = str + start;
/* just in case pstr points in the middle of a character, move forward to the start of the next char */
- if ( !UTF8_IS_SINGLE(*pstr) && !U8_IS_LEAD(*pstr) ) {
- char *str_end = str + str_len;
+ if ( !U8_IS_SINGLE(*pstr) && !U8_IS_LEAD(*pstr) ) {
+ unsigned char *str_end = str + str_len;
- while ( !UTF8_IS_SINGLE(*pstr) && !U8_IS_LEAD(*pstr) ) {
+ while ( !U8_IS_SINGLE(*pstr) && !U8_IS_LEAD(*pstr) ) {
pstr++;
if ( pstr >= str_end ) {
intl_error_set( NULL, U_ILLEGAL_ARGUMENT_ERROR,
--- a/ext/intl/intl_convertcpp.h
+++ b/ext/intl/intl_convertcpp.h
@@ -26,6 +26,8 @@
#include <unicode/unistr.h>
#include <zend_types.h>
+using icu::UnicodeString;
+
int intl_stringFromChar(UnicodeString &ret, char *str, size_t str_len, UErrorCode *status);
zend_string* intl_charFromString(const UnicodeString &from, UErrorCode *status);
--- a/ext/intl/msgformat/msgformat_helpers.cpp
+++ b/ext/intl/msgformat/msgformat_helpers.cpp
@@ -78,6 +78,16 @@ MessageFormatAdapter::getMessagePattern(MessageFormat* m) {
#endif
U_NAMESPACE_END
+using icu::Formattable;
+using icu::Format;
+using icu::DateFormat;
+using icu::MessageFormat;
+#ifdef HAS_MESSAGE_PATTERN
+using icu::MessagePattern;
+#endif
+using icu::MessageFormatAdapter;
+using icu::FieldPosition;
+
U_CFUNC int32_t umsg_format_arg_count(UMessageFormat *fmt)
{
int32_t fmt_count = 0;
@@ -229,15 +239,16 @@ static HashTable *umsg_parse_format(MessageFormatter_object *mfo,
UnicodeString typeString = mp.getSubstring(type_part);
/* This is all based on the rules in the docs for MessageFormat
* @see http://icu-project.org/apiref/icu4c/classMessageFormat.html */
- if (typeString == "number") {
+#define ASCII_LITERAL(s) UNICODE_STRING(s, sizeof(s)-1)
+ if (typeString == ASCII_LITERAL("number")) {
MessagePattern::Part style_part = mp.getPart(i + 1); /* Not advancing i */
if (style_part.getType() == UMSGPAT_PART_TYPE_ARG_STYLE) {
UnicodeString styleString = mp.getSubstring(style_part);
- if (styleString == "integer") {
+ if (styleString == ASCII_LITERAL("integer")) {
type = Formattable::kInt64;
- } else if (styleString == "currency") {
+ } else if (styleString == ASCII_LITERAL("currency")) {
type = Formattable::kDouble;
- } else if (styleString == "percent") {
+ } else if (styleString == ASCII_LITERAL("percent")) {
type = Formattable::kDouble;
} else { /* some style invalid/unknown to us */
type = Formattable::kDouble;
@@ -245,12 +256,13 @@ static HashTable *umsg_parse_format(MessageFormatter_object *mfo,
} else { // if missing style, part, make it a double
type = Formattable::kDouble;
}
- } else if ((typeString == "date") || (typeString == "time")) {
+ } else if ((typeString == ASCII_LITERAL("date")) || (typeString == ASCII_LITERAL("time"))) {
type = Formattable::kDate;
- } else if ((typeString == "spellout") || (typeString == "ordinal")
- || (typeString == "duration")) {
+ } else if ((typeString == ASCII_LITERAL("spellout")) || (typeString == ASCII_LITERAL("ordinal"))
+ || (typeString == ASCII_LITERAL("duration"))) {
type = Formattable::kDouble;
}
+#undef ASCII_LITERAL
} else {
/* If there's no UMSGPAT_PART_TYPE_ARG_TYPE right after a
* UMSGPAT_ARG_TYPE_SIMPLE argument, then the pattern
--- a/ext/intl/normalizer/normalizer_normalize.c
+++ b/ext/intl/normalizer/normalizer_normalize.c
@@ -24,6 +24,7 @@
#include "normalizer_class.h"
#include "normalizer_normalize.h"
#include "intl_convert.h"
+#include <unicode/utf8.h>
/* {{{ proto string Normalizer::normalize( string $input [, string $form = FORM_C] )
* Normalize a string. }}} */
--- a/ext/intl/timezone/timezone_class.cpp
+++ b/ext/intl/timezone/timezone_class.cpp
@@ -37,6 +37,8 @@ extern "C" {
#include <ext/date/php_date.h>
}
+using icu::Calendar;
+
/* {{{ Global variables */
U_CDECL_BEGIN
zend_class_entry *TimeZone_ce_ptr = NULL;
--- a/ext/intl/timezone/timezone_class.h
+++ b/ext/intl/timezone/timezone_class.h
@@ -29,6 +29,8 @@
#ifndef USE_TIMEZONE_POINTER
typedef void TimeZone;
+#else
+using icu::TimeZone;
#endif
typedef struct {
--- a/ext/intl/timezone/timezone_methods.cpp
+++ b/ext/intl/timezone/timezone_methods.cpp
@@ -23,6 +23,7 @@
#include <unicode/locid.h>
#include <unicode/timezone.h>
#include <unicode/ustring.h>
+#include <unicode/calendar.h>
#include "intl_convertcpp.h"
#include "../common/common_date.h"
@@ -37,6 +38,9 @@ extern "C" {
}
#include "common/common_enum.h"
+using icu::Locale;
+using icu::Calendar;
+
U_CFUNC PHP_METHOD(IntlTimeZone, __construct)
{
zend_throw_exception( NULL,
--- a/ext/intl/uchar/uchar.c
+++ b/ext/intl/uchar/uchar.c
@@ -3,6 +3,7 @@
#include "intl_convert.h"
#include <unicode/uchar.h>
+#include <unicode/utf8.h>
#define IC_METHOD(mname) PHP_METHOD(IntlChar, mname)
--
2.19.2

@ -1,4 +1,4 @@
# Copyright 1999-2019 Gentoo Authors
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="7"
@ -6,8 +6,8 @@ EAPI="7"
inherit flag-o-matic systemd autotools
DESCRIPTION="The PHP language runtime engine"
HOMEPAGE="https://php.net/"
SRC_URI="https://php.net/distributions/${P}.tar.xz"
HOMEPAGE="https://www.php.net/"
SRC_URI="https://www.php.net/distributions/${P}.tar.xz"
LICENSE="PHP-3.01
BSD
@ -18,7 +18,7 @@ LICENSE="PHP-3.01
unicode? ( BSD-2 LGPL-2.1 )"
SLOT="$(ver_cut 1-2)"
KEYWORDS="~alpha amd64 arm arm64 hppa ia64 ~mips ppc ppc64 ~s390 ~sh sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
# We can build the following SAPIs in the given order
SAPIS="embed cli cgi fpm apache2 phpdbg"
@ -28,17 +28,17 @@ IUSE="${IUSE}
${SAPIS/cli/+cli}
threads"
IUSE="${IUSE} acl bcmath berkdb bzip2 calendar cdb cjk
coverage crypt +ctype curl debug
IUSE="${IUSE} acl argon2 bcmath berkdb bzip2 calendar cdb cjk
coverage +ctype curl debug
enchant exif +fileinfo +filter firebird
+flatfile ftp gd gdbm gmp +hash +iconv imap inifile
intl iodbc ipv6 +json kerberos ldap ldap-sasl libedit libressl
intl iodbc ipv6 +json kerberos ldap ldap-sasl libedit libressl lmdb
mhash mssql mysql mysqli nls
oci8-instant-client odbc +opcache pcntl pdo +phar +posix postgres qdbm
readline recode selinux +session session-mm sharedmem
+simplexml snmp soap sockets spell sqlite ssl
sysvipc systemd test tidy +tokenizer truetype unicode wddx webp
+xml xmlreader xmlwriter xmlrpc xpm xslt zip zlib"
+simplexml snmp soap sockets sodium spell sqlite ssl
sysvipc systemd test tidy +tokenizer tokyocabinet truetype unicode wddx webp
+xml xmlreader xmlwriter xmlrpc xpm xslt zip zip-encryption zlib"
# The supported (that is, autodetected) versions of BDB are listed in
# the ./configure script. Other versions *work*, but we need to stick to
@ -48,6 +48,7 @@ COMMON_DEPEND="
>=dev-libs/libpcre-8.32[unicode]
fpm? ( acl? ( sys-apps/acl ) )
apache2? ( www-servers/apache[apache2_modules_unixd(+),threads=] )
argon2? ( app-crypt/argon2:= )
berkdb? ( || ( sys-libs/db:5.3
sys-libs/db:5.1
sys-libs/db:4.8
@ -57,7 +58,6 @@ COMMON_DEPEND="
bzip2? ( app-arch/bzip2:0= )
cdb? ( || ( dev-db/cdb dev-db/tinycdb ) )
coverage? ( dev-util/lcov )
crypt? ( >=dev-libs/libmcrypt-2.4 )
curl? ( >=net-misc/curl-7.10.5 )
enchant? ( <app-text/enchant-2.0:0 )
firebird? ( dev-db/firebird )
@ -71,7 +71,8 @@ COMMON_DEPEND="
kerberos? ( virtual/krb5 )
ldap? ( >=net-nds/openldap-1.2.11 )
ldap-sasl? ( dev-libs/cyrus-sasl >=net-nds/openldap-1.2.11 )
libedit? ( || ( sys-freebsd/freebsd-lib dev-libs/libedit ) )
libedit? ( dev-libs/libedit )
lmdb? ( dev-db/lmdb:= )
mssql? ( dev-db/freetds[mssql] )
nls? ( sys-devel/gettext )
oci8-instant-client? ( dev-db/oracle-instantclient-basic )
@ -84,6 +85,7 @@ COMMON_DEPEND="
simplexml? ( >=dev-libs/libxml2-2.6.8 )
snmp? ( >=net-analyzer/net-snmp-5.2 )
soap? ( >=dev-libs/libxml2-2.6.8 )
sodium? ( dev-libs/libsodium:= )
spell? ( >=app-text/aspell-0.50 )
sqlite? ( >=dev-db/sqlite-3.7.6.3 )
ssl? (
@ -91,6 +93,7 @@ COMMON_DEPEND="
libressl? ( dev-libs/libressl:0= )
)
tidy? ( || ( app-text/tidy-html5 app-text/htmltidy ) )
tokyocabinet? ( dev-db/tokyocabinet )
truetype? ( =media-libs/freetype-2* )
unicode? ( dev-libs/oniguruma:= )
wddx? ( >=dev-libs/libxml2-2.6.8 )
@ -102,6 +105,7 @@ COMMON_DEPEND="
xpm? ( x11-libs/libXpm )
xslt? ( dev-libs/libxslt >=dev-libs/libxml2-2.6.8 )
zip? ( sys-libs/zlib:0= )
zip-encryption? ( >=dev-libs/libzip-1.2.0:= )
zlib? ( sys-libs/zlib:0= )
"
@ -145,13 +149,14 @@ REQUIRED_USE="
session-mm? ( session !threads )
mysql? ( hash || ( mysqli pdo ) )
mysqli? ( hash )
zip-encryption? ( zip )
"
RESTRICT="!test? ( test )"
PATCHES=(
"${FILESDIR}/php-freetype-2.9.1.patch"
"${FILESDIR}/php-7.1.25-intl-use-icu-namespace.patch"
"${FILESDIR}/php-7.2.13-intl-use-icu-namespace.patch"
)
PHP_MV="$(ver_cut 1)"
@ -251,6 +256,7 @@ src_configure() {
)
our_conf+=(
$(use_with argon2 password-argon2 "${EPREFIX}/usr")
$(use_enable bcmath bcmath)
$(use_with bzip2 bz2 "${EPREFIX}/usr")
$(use_enable calendar calendar)
@ -276,7 +282,6 @@ src_configure() {
$(use_enable xml libxml)
$(use_with xml libxml-dir "${EPREFIX}/usr")
$(use_enable unicode mbstring)
$(use_with crypt mcrypt "${EPREFIX}/usr")
$(use_with unicode onig "${EPREFIX}/usr")
$(use_with ssl openssl "${EPREFIX}/usr")
$(use_with ssl openssl-dir "${EPREFIX}/usr")
@ -293,6 +298,7 @@ src_configure() {
$(use_with snmp snmp "${EPREFIX}/usr")
$(use_enable soap soap)
$(use_enable sockets sockets)
$(use_with sodium sodium "${EPREFIX}/usr")
$(use_with sqlite sqlite3 "${EPREFIX}/usr")
$(use_enable sysvipc sysvmsg)
$(use_enable sysvipc sysvsem)
@ -306,13 +312,14 @@ src_configure() {
$(use_with xmlrpc xmlrpc)
$(use_with xslt xsl "${EPREFIX}/usr")
$(use_enable zip zip)
$(use_with zip-encryption libzip "${EPREFIX}/usr")
$(use_with zlib zlib "${EPREFIX}/usr")
$(use_enable debug debug)
)
# DBA support
if use cdb || use berkdb || use flatfile || use gdbm || use inifile \
|| use qdbm ; then
|| use qdbm || use lmdb || use tokyocabinet ; then
our_conf+=( "--enable-dba${shared}" )
fi
@ -324,6 +331,7 @@ src_configure() {
$(use_with gdbm gdbm "${EPREFIX}/usr")
$(use_enable inifile inifile)
$(use_with qdbm qdbm "${EPREFIX}/usr")
$(use_with lmdb lmdb "${EPREFIX}/usr")
)
# Support for the GD graphics library
@ -411,9 +419,13 @@ src_configure() {
# we use the system copy of pcre
# --with-pcre-regex affects ext/pcre
# --with-pcre-dir affects ext/filter and ext/zip
# --with-pcre-valgrind cannot be enabled with system pcre
# Many arches don't support pcre-jit
our_conf+=(
--with-pcre-regex="${EPREFIX}/usr"
--with-pcre-dir="${EPREFIX}/usr"
--without-pcre-valgrind
--without-pcre-jit
)
# Catch CFLAGS problems

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

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

Binary file not shown.

@ -12,7 +12,7 @@ if [[ "${PV}" == *9999 ]] ; then
EGIT_REPO_URI="https://git.kernel.org/pub/scm/libs/ell/ell.git"
else
SRC_URI="https://mirrors.edge.kernel.org/pub/linux/libs/${PN}/${P}.tar.xz"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86"
KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ppc ppc64 ~sparc x86"
fi
LICENSE="LGPL-2.1"
SLOT="0"

@ -1,3 +1,4 @@
DIST isl-0.12.2.tar.bz2 1319434 BLAKE2B 53f009dc8093fb3d7d2db40db8f6fd9d7de630777e0308ac3c5918c2c106eda0edd7451df18c954ed6c9fc3ed7d18c73708d7b1f94c8c5c55aa94f8845f5b219 SHA512 b5dea4d6b504fac22f2d8cd9c47d6896994d3966635a514d45010243db44cfbc009574b808f3587f35d91de629110bc11b52941d4075e21f8646c59656e62aea
DIST isl-0.21.tar.xz 1621680 BLAKE2B ffd0c8aa7d489283ac958c280c05fe0c9ad621a10bd157d0522ac209a58e9bb6a8aad76c7a49b42d5e1c0f3605d0fb05a41ed6f2bb9aabb4f06060a5bbb65de5 SHA512 87ebc2fd6d4325cdfa82295a659ed6dbd70760a776b733e5503bbf8baa8fe80d905879728e9c7f23d2f3bcd7e78c00a66ab166c013ae97b603f7c460c69668ec
DIST isl-0.22.1.tar.xz 1676948 BLAKE2B cf1661f785344d8132e8f8a339ed8d457677ca1bf943a597d3d0be1e80d8c42e788cdde79fd073d130d681424da7a8e3ca9fa2cd4cd4232220f5c5a1ce99ab99 SHA512 8dc7b0c14e5bfdca8f2161be51d3c9afcd18bc217bb19b7de01dbba0c6f3fdc2b725fb999f8562c77bf2918d3005c9247f7a58474a6da7697390067944d4d4aa
DIST isl-0.22.tar.xz 1676992 BLAKE2B 1cb2125761adec02d9f337e8730faa5bc3a4e63cb7d968f7f4de3a3360b1f9be6caf6a27031f02df1ebe149fb70b6a32bdddbe8ae03032b8ff366f4eac274483 SHA512 7c3c9502ea07e4d47a823841837c3aa0b9d7ba0fe58deaf180734e44c18e53735ec783645da0bdc56b617c9e639b226cc03b40a947f852e1e787166a64f59424

@ -0,0 +1,51 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="7"
inherit eutils multilib-minimal preserve-libs
DESCRIPTION="A library for manipulating integer points bounded by linear constraints"
HOMEPAGE="http://isl.gforge.inria.fr/"
SRC_URI="http://isl.gforge.inria.fr/${P}.tar.xz"
LICENSE="LGPL-2.1"
SLOT="0/22"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sh ~sparc ~x86"
IUSE="static-libs"
RDEPEND=">=dev-libs/gmp-5.1.3-r1[${MULTILIB_USEDEP}]"
DEPEND="${RDEPEND}
app-arch/xz-utils
virtual/pkgconfig"
DOCS=( ChangeLog AUTHORS doc/manual.pdf )
PATCHES=(
"${FILESDIR}"/${PN}-0.19-gdb-autoload-dir.patch
)
multilib_src_configure() {
ECONF_SOURCE="${S}" econf $(use_enable static-libs static)
}
multilib_src_install_all() {
einstalldocs
find "${ED}" -type f -name '*.la' -delete
}
pkg_preinst() {
preserve_old_lib \
/usr/$(get_libdir)/libisl$(get_libname 14) \
/usr/$(get_libdir)/libisl$(get_libname 15) \
/usr/$(get_libdir)/libisl$(get_libname 19) \
/usr/$(get_libdir)/libisl$(get_libname 21)
}
pkg_postinst() {
preserve_old_lib_notify \
/usr/$(get_libdir)/libisl$(get_libname 14) \
/usr/$(get_libdir)/libisl$(get_libname 15) \
/usr/$(get_libdir)/libisl$(get_libname 19) \
/usr/$(get_libdir)/libisl$(get_libname 21)
}

@ -1,4 +1,4 @@
# Copyright 1999-2018 Gentoo Authors
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
@ -12,7 +12,7 @@ SRC_URI="https://launchpad.net/${PN}/${PV%.*}/${PV}/+download/${P}.tar.gz"
LICENSE="LGPL-2.1 LGPL-3"
SLOT="3"
KEYWORDS="~alpha amd64 ~arm ~arm64 ~ia64 x86"
KEYWORDS="~alpha amd64 ~arm ~arm64 ~ia64 ~ppc64 x86"
IUSE="+introspection"
RDEPEND="

@ -1,4 +1,4 @@
# Copyright 1999-2019 Gentoo Authors
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=5
@ -10,7 +10,7 @@ SRC_URI="https://launchpad.net/${PN}/${PV%.*}/${PV}/+download/${P}.tar.gz"
LICENSE="GPL-3"
SLOT="3"
KEYWORDS="~alpha amd64 ~arm arm64 ~ia64 x86"
KEYWORDS="~alpha amd64 ~arm arm64 ~ia64 ~ppc64 x86"
IUSE="test"
RESTRICT="!test? ( test )"

@ -1,3 +1,4 @@
DIST libuv-1.33.1.tar.gz 1251944 BLAKE2B fc20883dbd96df0d91fbcc75255ae2a371cd2d4e00a747cf23e7b9dbc2e4663ca71be2eef601b18c58e39f64cb3ad348684db4c683bcdd85a3fea4c28a578417 SHA512 0200aae2d38c26f537658955479cbc54fb69d5d8cbbccf3016cea319b2c46b1f311ca7a8fc289f14532acbbf2905cf96b17353b8b92bf09802424c372701d1d5
DIST libuv-1.34.0.tar.gz 1253950 BLAKE2B 3317709603409e009e24b5ff419bbac03927e75f0c0a37f0c6d8f558d027a25e883eec60a46928bb3533308a6f77a9834841e62ad9162df3c8cca1c3ae24a75e SHA512 30811311268179984fdc44209eb0e9ac4c6df08fa30790b75916ae838b23c2578a8a043340fbde86bcd5a373dcc335dec5fe88209560613876ca3272fd99c9e8
DIST libuv-1.34.1.tar.gz 1243096 BLAKE2B c6c786ceacbe3387a27455a413507cfe69511f88cddf150e98b21520e247a6825ff23506dc7fe1aa8c830772db23085d1b2c496ace11cde8405e4e204ce93f57 SHA512 95212bdba326a22edb2663982a4abb95c420d287c67b20e57d6acdd4c40d40956ad28c599beaf10fbc941c6e50df94261d84abf8ac25abceb10f67d9de5ef3d3
DIST libuv-1.34.2.tar.gz 1245374 BLAKE2B 500857cac1d714b43ae71c0f85e1cc69aab1735756f402582a6814c4d552a80097e76fe3cf4b74a395b5cc4340156c9e8abef2ad02000d2a5565ee8972062ab4 SHA512 7e7a54d2d1e0ed76654ece9481f02177d201a4590c5d9b5c8b4edf6f795a0d7c30970b907481847930a524a0f06c15c6c73b3ce73a8afa2f836e33dbd54a7249

@ -0,0 +1,47 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit autotools multilib-minimal
DESCRIPTION="Cross-platform asychronous I/O"
HOMEPAGE="https://github.com/libuv/libuv"
SRC_URI="https://github.com/libuv/libuv/archive/v${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="BSD BSD-2 ISC MIT"
SLOT="0/1"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
IUSE="static-libs"
RESTRICT="test"
DEPEND="sys-devel/libtool
virtual/pkgconfig[${MULTILIB_USEDEP}]"
src_prepare() {
default
echo "m4_define([UV_EXTRA_AUTOMAKE_FLAGS], [serial-tests])" \
> m4/libuv-extra-automake-flags.m4 || die
# upstream fails to ship a configure script
eautoreconf
}
multilib_src_configure() {
local myeconfargs=(
cc_cv_cflags__g=no
$(use_enable static-libs static)
)
ECONF_SOURCE="${S}" econf "${myeconfargs[@]}"
}
multilib_src_test() {
mkdir "${BUILD_DIR}"/test || die
cp -pPR "${S}"/test/fixtures "${BUILD_DIR}"/test/fixtures || die
default
}
multilib_src_install_all() {
einstalldocs
find "${D}" -name '*.la' -delete || die
}

@ -1,4 +1,4 @@
# Copyright 1999-2019 Gentoo Authors
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
@ -13,7 +13,7 @@ SRC_URI="http://download.drobilla.net/${P}.tar.bz2"
LICENSE="ISC"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86"
KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ia64 ppc ppc64 ~sparc x86"
IUSE="doc static-libs test"
RESTRICT="!test? ( test )"

@ -1,4 +1,4 @@
# Copyright 1999-2019 Gentoo Authors
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
@ -13,7 +13,7 @@ SRC_URI="http://download.drobilla.net/${P}.tar.bz2"
LICENSE="ISC"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ppc64 ~sparc ~x86"
IUSE="doc static-libs test"
RESTRICT="!test? ( test )"

@ -1,4 +1,4 @@
# Copyright 1999-2019 Gentoo Authors
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
@ -10,7 +10,7 @@ inherit perl-module
DESCRIPTION="Perl module for BSD process resource limit and priority functions"
SLOT="0"
KEYWORDS="alpha amd64 ~arm ~arm64 ~hppa ia64 ~ppc ~ppc64 s390 ~sh sparc x86"
KEYWORDS="alpha amd64 ~arm ~arm64 ~hppa ia64 ppc ppc64 s390 ~sh sparc x86"
IUSE=""
DEPEND="virtual/perl-ExtUtils-MakeMaker"

Binary file not shown.

Binary file not shown.

@ -1 +0,0 @@
DIST cassandra-1.3.2.tgz 163700 BLAKE2B 00de93b4d8725e2a5ebf4194b38c7775b7845fddb751ccb831f7ae98c397344492f9a085480b4f76a987b4f3dc23ac2431d464eaf6bc3c45d819f087130cdada SHA512 2b3605f24e81b247afa5ea6bb8e1d1c24216a281babfbd750b973fb2094c864a3d45c7769c759bfe2f3f31360766a5b2eb1ff0ee4414ec9a9e9c5f164748242a

@ -1,18 +0,0 @@
<?xml version='1.0' encoding='UTF-8'?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<longdescription lang="en">
DataStax PHP driver for Apache Cassandra or Scilla
</longdescription>
<maintainer type="person">
<email>geaaru@gmail.com</email>
<name>Geaaru</name>
</maintainer>
<maintainer type="project">
<email>proxy-maint@gentoo.org</email>
<name>Proxy Maintainers</name>
</maintainer>
<upstream>
<remote-id type="github">datastax/php-driver</remote-id>
</upstream>
</pkgmetadata>

@ -1,19 +0,0 @@
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=6
USE_PHP="php5-6 php7-0 php7-1"
inherit php-ext-pecl-r3
KEYWORDS="~amd64 ~x86"
DESCRIPTION="DataStax PHP Driver for Apache Cassandra"
HOMEPAGE="https://github.com/datastax/php-driver"
LICENSE="Apache-2.0"
SLOT="0"
IUSE=""
DEPEND=">=dev-db/cpp-driver-2.7.0"
RDEPEND="${DEPEND}"

@ -1,2 +1 @@
DIST event-2.2.1.tgz 133147 BLAKE2B 909892c937843821b34cb4d450b06698b23ed8aac59915ef96c72ba08e4afe84856e913527e9b0197d28ebbe5cac8ac45174d8e3fbeae33eae0619e3b3e21959 SHA512 a331e0cbb923b2efe95a366c842929e9ffcdf15d4b95dce83f5d1e9bb33045477f278672835ffc087df89aa3614106cf504f4e6a779a620b94c20d83449e95f2
DIST event-2.5.3.tgz 140913 BLAKE2B e9b1886b65d1c307bf4a40ebe20e19f33d9e422ce98fb704c7174e953c2488b87f941fc5615bfee07e7d51e1775a0256349e023e6d8921fdd237e527ab108151 SHA512 359eee2f501444f444904ee1960d85af0b77259e59a06d9c6ae1ec008f7bda9bda5bf999d437d84416150a965466519c04e4c2f36dbca44367075fcbb46cd917

@ -1,41 +0,0 @@
# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="6"
PHP_EXT_NAME="event"
PHP_EXT_INI="yes"
PHP_EXT_ZENDEXT="no"
DOCS=( README.md )
USE_PHP="php5-6 php7-0 php7-1"
inherit php-ext-pecl-r3
KEYWORDS="amd64 ia64 x86"
LICENSE="PHP-3.01"
DESCRIPTION="PHP wrapper for libevent2"
SLOT="0"
DEPEND="
>=dev-libs/libevent-2.0.2
php_targets_php5-6? ( dev-lang/php:5.6[sockets?] )
php_targets_php7-0? ( dev-lang/php:7.0[sockets?] )
php_targets_php7-1? ( dev-lang/php:7.1[sockets?] )"
RDEPEND="${DEPEND} !dev-php/pecl-libevent"
IUSE="debug +extra +ssl threads +sockets examples"
src_configure() {
local PHP_EXT_ECONF_ARGS=(
--with-event-core
$(use_enable debug event-debug)
$(use_with extra event-extra)
$(use_with ssl event-openssl)
$(use_with threads event-pthreads)
$(use_enable sockets event-sockets)
)
php-ext-source-r3_src_configure
}

@ -1,3 +1 @@
DIST oauth-2.0.2.tgz 49115 BLAKE2B 292c8c2d7fa3728aa6a73cdb65ee1c603f341cd24596d64b910f495ef649adb1f90ba4dfdab5ce1802dee9e8a0e3a6af502da340ed467de6e8c5d83df18abc7d SHA512 b7aa9459542ec390a5420127d75607702ae6df6254f4e39acb62d35c6a39b8b7990499c279df07ce681081e455b55219c51df42fd516321f317465badf6d459d
DIST oauth-2.0.3.tgz 49413 BLAKE2B 581ba50a3add230364ed5c161b76073b1dd7c301eaf4cd048ed97039deb45fea73da56f0d0b69186d8f6fb20a55724ba5892d80bd7aae343b15534d3c82b6346 SHA512 3e0ce5ce01533bfd304c0c34465cc184fbd0af1a25f5192860e6394c86dc948688cc8d4b419b48676481cef3a685ba70ac612a8c516da26d0dfe9efdef7e98d9
DIST oauth-2.0.4.tgz 49359 BLAKE2B d5fb23293fc03f40e2b3a5c5ad51bce1b06a6004e1f20d1563b3db7bb79a71f70bca467348d68b4f6d2393003b4ad23debbe5877192d9e189056e86f9fc00b3e SHA512 269b579f87a9f3f229433c74937f74b9b6df453a6e05f7751ca12fa5f24c9ad62d1ebe5cdb370d33d774a0f2e244c1c685a53226dcb35c0005b5532a00c137d4

@ -1,48 +0,0 @@
From f1a5b6dea1982dab03c810edd321ca57907d41fe Mon Sep 17 00:00:00 2001
From: Adam Saponara <as@php.net>
Date: Fri, 24 Feb 2017 17:20:51 -0500
Subject: [PATCH] Fix bug #74163: Segfault in oauth_compare_value
Credit to @russpos for finding this bug
---
oauth.c | 4 ++--
tests/oauth_sbs.phpt | 4 ++++
2 files changed, 6 insertions(+), 2 deletions(-)
diff --git a/oauth.c b/oauth.c
index 62522bd..198e2cb 100644
--- a/oauth.c
+++ b/oauth.c
@@ -374,8 +374,8 @@ static int oauth_strcmp(zval *first, zval *second)
static int oauth_compare_value(const void *a, const void *b)
{
Bucket *f, *s;
- f = *(Bucket **)a;
- s = *(Bucket **)b;
+ f = (Bucket *)a;
+ s = (Bucket *)b;
return oauth_strcmp(&f->val, &s->val);
}
diff --git a/tests/oauth_sbs.phpt b/tests/oauth_sbs.phpt
index a49d2b4..4e9269e 100644
--- a/tests/oauth_sbs.phpt
+++ b/tests/oauth_sbs.phpt
@@ -21,6 +21,8 @@ echo "-- putting oauth_signature inside by mistake --\n";
echo oauth_get_sbs('GET', 'http://127.0.0.1:12342/',array('oauth_signature'=>'hello world')),"\n";
echo "-- merging url query and extra params --\n";
echo oauth_get_sbs('GET', 'http://127.0.0.1:12342/script?arg1=1',array('arg2' => '2')),"\n";
+echo "-- with array value --\n";
+echo oauth_get_sbs('GET', 'http://127.0.0.1:12342/script',array('arg2' => [1, 2, 3])),"\n";
?>
--EXPECTF--
@@ -44,3 +46,5 @@ GET&http%3A%2F%2F127.0.0.1%3A12342%2F&test%3D
GET&http%3A%2F%2F127.0.0.1%3A12342%2F&
-- merging url query and extra params --
GET&http%3A%2F%2F127.0.0.1%3A12342%2Fscript&arg1%3D1%26arg2%3D2
+-- with array value --
+GET&http%3A%2F%2F127.0.0.1%3A12342%2Fscript&arg2%3D1%26arg2%3D2%26arg2%3D3
--
2.1.4

@ -1,56 +0,0 @@
# Copyright 1999-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI="6"
PHP_EXT_NAME="oauth"
PHP_EXT_INI="yes"
PHP_EXT_ZENDEXT="no"
USE_PHP="php5-6 php7-0 php7-1 php7-2"
inherit php-ext-pecl-r3
# Really only build for 7.0
USE_PHP="php7-0 php7-1 php7-2"
KEYWORDS="~amd64 ~x86"
DESCRIPTION="OAuth is an authorization protocol built on top of HTTP"
LICENSE="BSD"
SLOT="7"
IUSE="+curl examples"
DEPEND="php_targets_php7-0? ( dev-lang/php:7.0[hash]
dev-libs/libpcre:3= curl? ( net-misc/curl:0= ) )
php_targets_php7-1? ( dev-lang/php:7.1[hash]
dev-libs/libpcre:3= curl? ( net-misc/curl:0= ) )
php_targets_php7-2? ( dev-lang/php:7.2[hash]
dev-libs/libpcre:3= curl? ( net-misc/curl:0= ) )
"
RDEPEND="${DEPEND} php_targets_php5-6? ( ${CATEGORY}/${PN}:0[php_targets_php5-6(-)?] )"
src_prepare() {
if use php_targets_php7-0 || use php_targets_php7-1 || use php_targets_php7-2; then
local PATCHES=( "${FILESDIR}/${PV}-compare_segfault.patch" )
php-ext-source-r3_src_prepare
else
eapply_user
fi
}
src_configure() {
if use php_targets_php7-0 || use php_targets_php7-1 || use php_targets_php7-2; then
local PHP_EXT_ECONF_ARGS=(
--enable-oauth
$(use_with curl)
)
php-ext-source-r3_src_configure
fi
}
src_install() {
if use php_targets_php7-0 || use php_targets_php7-1 || use php_targets_php7-2; then
php-ext-pecl-r3_src_install
fi
}

@ -1,59 +0,0 @@
# Copyright 1999-2018 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="6"
PHP_EXT_NAME="oauth"
PHP_EXT_INI="yes"
PHP_EXT_ZENDEXT="no"
USE_PHP="php5-6 php7-0 php7-1 php7-2 php7-3"
inherit php-ext-pecl-r3
# Really only build for 7.0
USE_PHP="php7-0 php7-1 php7-2 php7-3"
KEYWORDS="~amd64 ~x86"
DESCRIPTION="OAuth is an authorization protocol built on top of HTTP"
LICENSE="BSD"
SLOT="7"
IUSE="+curl examples"
DEPEND="php_targets_php7-0? ( dev-lang/php:7.0[hash]
dev-libs/libpcre:3= curl? ( net-misc/curl:0= ) )
php_targets_php7-1? ( dev-lang/php:7.1[hash]
dev-libs/libpcre:3= curl? ( net-misc/curl:0= ) )
php_targets_php7-2? ( dev-lang/php:7.2[hash]
dev-libs/libpcre:3= curl? ( net-misc/curl:0= ) )
php_targets_php7-3? ( dev-lang/php:7.3[hash]
dev-libs/libpcre:3= curl? ( net-misc/curl:0= ) )
"
RDEPEND="${DEPEND} php_targets_php5-6? ( ${CATEGORY}/${PN}:0[php_targets_php5-6(-)?] )"
src_prepare() {
if use php_targets_php7-0 || use php_targets_php7-1 || use php_targets_php7-2 || use php_targets_php7-3; then
# Disable tests that depend on header order
rm "${S}/tests/bug16946.phpt" "${S}/tests/overflow_redir.phpt" || die
php-ext-source-r3_src_prepare
else
eapply_user
fi
}
src_configure() {
if use php_targets_php7-0 || use php_targets_php7-1 || use php_targets_php7-2 || use php_targets_php7-3; then
local PHP_EXT_ECONF_ARGS=(
--enable-oauth
$(use_with curl)
)
php-ext-source-r3_src_configure
fi
}
src_install() {
if use php_targets_php7-0 || use php_targets_php7-1 || use php_targets_php7-2 || use php_targets_php7-3; then
php-ext-pecl-r3_src_install
fi
}

@ -5,27 +5,16 @@ EAPI="7"
PHP_EXT_NAME="ssh2"
USE_PHP="php5-6 php7-1 php7-2 php7-3 php7-4"
USE_PHP="php7-2 php7-3 php7-4"
EGIT_REPO_URI="https://git.php.net/repository/pecl/networking/ssh2.git"
inherit php-ext-source-r3 git-r3
USE_PHP="php7-1 php7-2 php7-3 php7-4"
DESCRIPTION="PHP bindings for the libssh2 library"
LICENSE="PHP-3.01"
SLOT="7"
IUSE=""
KEYWORDS=""
DEPEND=">=net-libs/libssh2-1.2"
RDEPEND="${DEPEND}
php_targets_php5-6? ( dev-php/pecl-ssh2:0[php_targets_php5-6] )"
RDEPEND="${DEPEND}"
HOMEPAGE="https://pecl.php.net/package/ssh2"
src_prepare() {
if use php_targets_php7-1 || use php_targets_php7-2 || use php_targets_php7-3 || use php_targets_php7-4 ; then
php-ext-source-r3_src_prepare
else
default_src_prepare
fi
}

@ -1,2 +1 @@
DIST pecl-translit-0.6.2.tar.gz 226445 BLAKE2B c5fbf99134b7f933f1d8209ebffa97a28c927b8db917319a9308debfa4275d8e6e3e0c261cfb0661c8202f25c0cdf5a888bc90f356cd80a2ab788366c4c3cb85 SHA512 1d5229ceb2c06f5e4a9e3f7e1e760fc2974c01b732f8e220b9b1ddd49a82c932f4237fb6a19c82017270614881156f9637cffbe7896132e4a07e7a6547915ebb
DIST pecl-translit-0.6.3.tar.gz 227419 BLAKE2B ebff291a00d61bb4f8e2c47e26baef4278f317be8acd7e5265d3056f8992e6b7e792718c86633277c4a0af5403e253b317241a71aba9b73079a8efb53389ab30 SHA512 5b5e3097a972e45424696abea4d4698fc6c7b6598f1a76754224a4b66776752a01b3bad52bc14afb8cc6e75d36c4558677e609a379898cdd91a5b0a652155cd1

@ -1,33 +0,0 @@
# Copyright 1999-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=6
PHP_EXT_NAME="translit"
PHP_EXT_INI="yes"
PHP_EXT_ZENDEXT="no"
USE_PHP="php5-6 php7-0 php7-1 php7-2"
PHP_EXT_NAME="translit"
MY_PV="${PV//./_}"
S="${WORKDIR}/${PN}-RELEASE_${MY_PV}"
inherit php-ext-source-r3
SRC_URI="https://github.com/derickr/${PN}/archive/RELEASE_${MY_PV}.tar.gz -> ${P}.tar.gz"
KEYWORDS="~amd64 ~x86"
HOMEPAGE="https://github.com/derickr/pecl-translit"
DESCRIPTION="Transliterates non-latin character sets to latin"
LICENSE="BSD-2"
SLOT="0"
IUSE=""
PHP_EXT_ECONF_ARGS=()
src_test() {
for slot in $(php_get_slots); do
php_init_slot_env ${slot}
NO_INTERACTION="yes" emake test
done
}

@ -1,2 +1 @@
DIST uuid-1.0.4.tgz 14900 BLAKE2B d653329fbac1bec66d842e048b290ac6b0382f78e6ccd6f2158bafaaa375ae4e951f794d4b70c139b23a28d6ddbc1f44be47cf2af0bd2fd09de33beb17b0f837 SHA512 989d993f8158a13026b8e5c02f4aa50489b1a946d12da81dd1fff6091839a45b180562f74c8af368a498c495477374ec9e1d536e7de0178c1f288e3abe360164
DIST uuid-1.1.0.tgz 15225 BLAKE2B 0a5a326076707e0d3e7c779151a13853e52d026ebdf62c9ab147cf5d00bbc68a3d82e15101c1d4a232d96ea7e988304a25517723adb3127938474172dfab16c2 SHA512 aea814a12e266e4a9e36c58bae78927fa9de6d2b7bf9c75a911710b26958aeecd31d972f56519cf4882a4b13864bc0740ad968b06e704ce7642279253009e76d

@ -1,23 +0,0 @@
# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="7"
PHP_EXT_NAME="uuid"
PHP_EXT_INIT="yes"
PHP_EXT_ZENDEXT="no"
DOCS=( CREDITS )
USE_PHP="php5-6 php7-0 php7-1 php7-2 php7-3 php7-4"
inherit php-ext-pecl-r3
DESCRIPTION="A wrapper around libuuid"
LICENSE="LGPL-2.1"
SLOT="0"
KEYWORDS="~amd64"
IUSE=""
DEPEND="sys-apps/util-linux"
RDEPEND="${DEPEND}"
PHP_EXT_ECONF_ARGS=()

@ -3,7 +3,7 @@
EAPI="7"
USE_PHP="php5-6 php7-0 php7-1 php7-2 php7-3 php7-4"
USE_PHP="php7-2 php7-3 php7-4"
inherit php-ext-pecl-r3 git-r3

Binary file not shown.

@ -1 +1,2 @@
DIST capturer-2.3.tar.gz 18380 BLAKE2B e51f7013715e1bcf83da6126804aa3c223fcfeb7c4f958038f123e19dcb807bb480d46ed17307ccc312b2d5873dc9f82ed90f7be7f01b7062ef81c11829c6698 SHA512 267c6238ab143894f3d74002334b99e3d1a59a3bf30f5ad04d6f1a81c9439b1369fe161859f86924280e3b9e47536e53a0a80045acda9ae471ded7d751e01470
DIST capturer-2.4.tar.gz 16963 BLAKE2B 329e388059a033993cf2ac3744a8df273beea0239f3696d19aece57767b0b5cd3397fa095f860c4f00ef24e8cd6bf2e58aab4158a86cf8c0c09c89d2065de0da SHA512 d85614b0424ab8817df9475ac0d230d7151289a3353a3c043a7fa89dac0528265a4dee535cac9ad0a3c2fbb0cac18afa69cd0a405b1becab55f9a6be13df0c46

@ -0,0 +1,28 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
PYTHON_COMPAT=( python3_{6,7,8} )
inherit distutils-r1
DESCRIPTION="Easily capture stdout/stderr of the current process and subprocesses"
HOMEPAGE="https://capturer.readthedocs.io/en/latest/
https://pypi.org/project/capturer/
https://github.com/xolox/python-capturer"
SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
SLOT="0"
LICENSE="MIT"
KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux"
RDEPEND="dev-python/humanfriendly[${PYTHON_USEDEP}]"
DEPEND="test? ( dev-python/coverage[${PYTHON_USEDEP}] )"
distutils_enable_tests pytest
python_test() {
pytest -vv ${PN}/tests.py || die "Tests fail with ${EPYTHON}"
}

@ -2,3 +2,4 @@ DIST cmd2-0.7.9.tar.gz 71298 BLAKE2B d1623e2d6a7ac66058b5a43a9688ba850962fa7b565
DIST cmd2-0.8.9.tar.gz 112543 BLAKE2B b55edd450abcff863a34252b724919ace9f65b62b8175f28a1bb4fb64692a67723339a887dac45e87f37db71773689cfa213038740a4b3d165bf95f9cdad1d0e SHA512 80c80b67f8a1709156450fa476215a5466cca2853102f6012f1d83867a311d86a68d441dcea9895b62add731b3d00a7c3ecefde939b4f2ccd61d058ef9386a84
DIST cmd2-0.9.22.tar.gz 565214 BLAKE2B e0f950c1bc994bbc3d1ddf2a526a97d61c1aa59c6089574518d2222c385ecf91f53fcc0e6dcaa84460cc4a6647bc5baf37f12c6c9bf16fdb3db14cf15a05bd18 SHA512 1ff5cbea130ef3729c021144ca27a31c0e9cb8b2977eca454a0f528c468180e822fa8d23e7b07846a5109ad38bf12565b613b8295751f94852d9251c4e8d6edf
DIST cmd2-0.9.23.tar.gz 568514 BLAKE2B 02070a72ec42cd04f3f647eb6344b48a5149e21a8a87be713dec837d48295c6b919f55229fb09d013f1722ee111f8a75958e884c18b2eaa339097ff81554d8c3 SHA512 ea00a17b206d6312b0c2ae6b982f3fe4634f7717286a475438972780a1510b37120f007907f632338eafd093d03cb0e928c705e54a3aa8295f7aced73630a2f2
DIST cmd2-0.9.24.tar.gz 580456 BLAKE2B 0f4e32c52589d7493db13aafcff1dcc37b45d27120f546baed0e3541398f7ffde1a381b44fb4ba2f822ffaeff0ae52b7ad5cda509370685c480a76e1d677f7ed SHA512 0d9cf8d203914f9a62ff15fb538440a2a506b1751c381cef75054839f04fedaa3c6a43b7da8ed99dd0c3b17b55641e2a1cf90826cc7948d2798dbb45e53b6639

@ -0,0 +1,35 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
PYTHON_COMPAT=( python3_{6,7,8} )
inherit distutils-r1 virtualx
DESCRIPTION="Extra features for standard library's cmd module"
HOMEPAGE="https://github.com/python-cmd2/cmd2"
SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
LICENSE="MIT"
SLOT="0"
KEYWORDS="~amd64 ~arm64 ~x86 ~amd64-linux ~x86-linux"
RDEPEND="
dev-python/attrs[${PYTHON_USEDEP}]
>=dev-python/colorama-0.3.7[${PYTHON_USEDEP}]
>=dev-python/pyperclip-1.6[${PYTHON_USEDEP}]
dev-python/six[${PYTHON_USEDEP}]
dev-python/wcwidth[${PYTHON_USEDEP}]
"
BDEPEND="
dev-python/setuptools[${PYTHON_USEDEP}]
dev-python/setuptools_scm[${PYTHON_USEDEP}]
"
distutils_enable_tests pytest
src_test() {
# tests rely on very specific text wrapping...
local -x COLUMNS=80
virtx distutils-r1_src_test
}

@ -9,12 +9,8 @@
<email>python@gentoo.org</email>
<name>Python</name>
</maintainer>
<longdescription lang="en">
Extra features for standard library's cmd module
</longdescription>
<upstream>
<remote-id type="pypi">cmd2</remote-id>
<remote-id type="bitbucket">catherinedevlin/cmd2</remote-id>
<remote-id type="github">python-cmd2/cmd2</remote-id>
</upstream>
</pkgmetadata>

@ -1 +1,2 @@
DIST coloredlogs-10.0.tar.gz 273273 BLAKE2B 775b12718d780da396d74c7f960cdbbd4858c793bf3eefb53d29e9f6b415f682110ae2c7ac631be230578946a2fab8d75e0c3aa487ccd952bb05443f0a85700c SHA512 f4a51fd8fa92ea4e2ef0b58305dcc4bbe12851e722fc85cfd4f48a9388002efced52bcf027f6dc4c525b095f3f953970e73928fdce3245ab4f9d13ae36b9d498
DIST coloredlogs-6.1.tar.gz 28057 BLAKE2B bbb5946db3e6cbfae0b9947d2aa29769858833e35213a44a5be4ceb434021ee8c583ff00c980b9ab4fc533f6fec80e151895097b6a87c44257ef0fd5c7ab0bab SHA512 834cf993e7ffd3328644d334912fcf5a5156a441c6184643b38e5f356d46d7b5c48e02ee1e1b432265052c7a5ab1071ba456e575217a4a762f8387131059c405

@ -0,0 +1,38 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
PYTHON_COMPAT=( python3_{6,7,8} )
DISTUTILS_USE_SETUPTOOLS=rdepend
inherit distutils-r1
DESCRIPTION="Colored stream handler for the logging module"
HOMEPAGE="
https://pypi.org/project/coloredlogs/
https://github.com/xolox/python-coloredlogs
https://coloredlogs.readthedocs.io/en/latest/"
SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
LICENSE="MIT"
SLOT="0"
KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux"
RDEPEND="dev-python/humanfriendly[${PYTHON_USEDEP}]"
DEPEND="test? (
dev-python/capturer[${PYTHON_USEDEP}]
dev-python/coverage[${PYTHON_USEDEP}]
dev-python/mock[${PYTHON_USEDEP}]
dev-python/verboselogs[${PYTHON_USEDEP}] )"
PATCHES="${FILESDIR}/${P}-skip-sandbox-violation-tests.patch"
distutils_enable_sphinx docs
distutils_enable_tests pytest
python_test() {
pytest -vv ${PN}/tests.py || die "Tests fail with ${EPYTHON}"
}

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

Loading…
Cancel
Save