Added a lot of PHP packages for the defunct volkszaehler ebuild
This commit is contained in:
@@ -3,60 +3,105 @@
|
||||
|
||||
EAPI=8
|
||||
|
||||
inherit bash-completion-r1 git-r3
|
||||
|
||||
DESCRIPTION="Dependency Manager for PHP"
|
||||
DESCRIPTION="Composer helps you declare, manage and install dependencies of PHP projects. It ensures you have the right stack everywhere."
|
||||
HOMEPAGE="https://github.com/composer/composer"
|
||||
SRC_URI="https://raw.githubusercontent.com/inode64/inode64-overlay/main/dist/${P}-vendor.tar.xz"
|
||||
SRC_URI="https://github.com/composer/composer/archive/${PV}.tar.gz -> ${P}.tar.gz"
|
||||
|
||||
EGIT_REPO_URI="https://github.com/${PN}/${PN}"
|
||||
EGIT_COMMIT="8413f50f097774e0601400e5599b5f38866fa3f4"
|
||||
EGIT_BRANCH="2.8"
|
||||
S="${WORKDIR}/composer-${PV}"
|
||||
|
||||
LICENSE="MIT"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~arm64 ~x86"
|
||||
IUSE="doc"
|
||||
DOCS="CHANGELOG.md README.md"
|
||||
KEYWORDS="~amd64 ~arm ~arm64 ~x86"
|
||||
|
||||
src_unpack() {
|
||||
git-r3_src_unpack
|
||||
unpack ${P}-vendor.tar.xz
|
||||
}
|
||||
BDEPEND="dev-php/theseer-Autoload"
|
||||
|
||||
src_compile() {
|
||||
php --define memory_limit=-1 -d phar.readonly=Off bin/compile || die
|
||||
mv composer.phar composer
|
||||
chmod +x composer
|
||||
./composer completion bash > completion.bash || die
|
||||
}
|
||||
RDEPEND="
|
||||
>=dev-lang/php-7.4:*
|
||||
dev-php/fedora-autoloader
|
||||
dev-php/ca-bundle
|
||||
dev-php/class-map-generator
|
||||
dev-php/justinrainbow-json-schema
|
||||
dev-php/metadata-minifier
|
||||
dev-php/pcre
|
||||
dev-php/psr-log
|
||||
dev-php/react-promise
|
||||
dev-php/seld-jsonlint
|
||||
dev-php/seld-phar-utils
|
||||
dev-php/seld-signal-handler
|
||||
dev-php/semver
|
||||
dev-php/spdx-licenses
|
||||
dev-php/symfony-console
|
||||
dev-php/symfony-filesystem
|
||||
dev-php/symfony-finder
|
||||
dev-php/symfony-polyfill-php73
|
||||
dev-php/symfony-polyfill-php80
|
||||
dev-php/symfony-polyfill-php81
|
||||
dev-php/symfony-process
|
||||
dev-php/xdebug-handler
|
||||
"
|
||||
|
||||
src_test() {
|
||||
if has usersandbox ${FEATURES} || has network-sandbox ${FEATURES}; then
|
||||
ewarn "Some tests may fail with FEATURES=usersandbox or"
|
||||
ewarn "FEATURES=network-sandbox; Skipping tests because"
|
||||
ewarn "test suite would hang forever in such environments!"
|
||||
return 0;
|
||||
fi
|
||||
PATCHES=(
|
||||
"${FILESDIR}"/autoload.patch
|
||||
"${FILESDIR}"/explain-non-standard-install.patch
|
||||
)
|
||||
|
||||
mkdir integration-test
|
||||
cd integration-test
|
||||
src_prepare() {
|
||||
default
|
||||
|
||||
../composer init \
|
||||
--no-interaction \
|
||||
--type=project \
|
||||
--name='gentoo/test' \
|
||||
--description='Composer Test Project' \
|
||||
--license='GPL-3.0-or-later' \
|
||||
--require='symfony/console:*' || die
|
||||
../composer update --no-interaction --no-progress --prefer-dist || die
|
||||
../composer validate --no-interaction || die
|
||||
mkdir vendor || die
|
||||
|
||||
phpab \
|
||||
--quiet \
|
||||
--output vendor/autoload.php \
|
||||
--template "${FILESDIR}"/autoload.php.tpl \
|
||||
--basedir src \
|
||||
src \
|
||||
|| die
|
||||
|
||||
VENDOR_DIR="${EPREFIX}/usr/share/php"
|
||||
cat >> vendor/autoload.php <<EOF || die "failed to extend autoload.php"
|
||||
|
||||
// Dependencies
|
||||
\Fedora\Autoloader\Dependencies::required([
|
||||
"${VENDOR_DIR}/Fedora/Autoloader/autoload.php",
|
||||
"${VENDOR_DIR}/Composer/CaBundle/autoload.php",
|
||||
"${VENDOR_DIR}/Composer/ClassMapGenerator/autoload.php",
|
||||
"${VENDOR_DIR}/JsonSchema/autoload.php",
|
||||
"${VENDOR_DIR}/MabeEnum/autoload.php",
|
||||
"${VENDOR_DIR}/Composer/MetadataMinifier/autoload.php",
|
||||
"${VENDOR_DIR}/Composer/Pcre/autoload.php",
|
||||
"${VENDOR_DIR}/Psr/Container/autoload.php",
|
||||
"${VENDOR_DIR}/Psr/Log/autoload.php",
|
||||
"${VENDOR_DIR}/React/Promise/autoload.php",
|
||||
"${VENDOR_DIR}/Seld/JsonLint/autoload.php",
|
||||
"${VENDOR_DIR}/Seld/PharUtils/autoload.php",
|
||||
"${VENDOR_DIR}/Seld/Signal/autoload.php",
|
||||
"${VENDOR_DIR}/Composer/Semver/autoload.php",
|
||||
"${VENDOR_DIR}/Composer/Spdx/autoload.php",
|
||||
"${VENDOR_DIR}/Symfony/Component/Console/autoload.php",
|
||||
"${VENDOR_DIR}/Symfony/Component/DeprecationContracts/autoload.php",
|
||||
"${VENDOR_DIR}/Symfony/Component/Filesystem/autoload.php",
|
||||
"${VENDOR_DIR}/Symfony/Component/Finder/autoload.php",
|
||||
"${VENDOR_DIR}/Symfony/Polyfill/Ctype/autoload.php",
|
||||
"${VENDOR_DIR}/Symfony/Polyfill/Intl/Grapheme/autoload.php",
|
||||
"${VENDOR_DIR}/Symfony/Polyfill/Intl/Normalizer/autoload.php",
|
||||
"${VENDOR_DIR}/Symfony/Polyfill/Mbstring/autoload.php",
|
||||
"${VENDOR_DIR}/Symfony/Polyfill/Php73/autoload.php",
|
||||
"${VENDOR_DIR}/Symfony/Polyfill/Php80/autoload.php",
|
||||
"${VENDOR_DIR}/Symfony/Polyfill/Php81/autoload.php",
|
||||
"${VENDOR_DIR}/Symfony/Component/Process/autoload.php",
|
||||
"${VENDOR_DIR}/Symfony/Contracts/Service/autoload.php",
|
||||
"${VENDOR_DIR}/Symfony/Component/String/autoload.php",
|
||||
"${VENDOR_DIR}/Composer/XdebugHandler/autoload.php"
|
||||
]);
|
||||
EOF
|
||||
}
|
||||
|
||||
src_install() {
|
||||
dobin "${PN}"
|
||||
newbashcomp completion.bash composer
|
||||
if use doc; then
|
||||
dodoc -r doc
|
||||
fi
|
||||
insinto "/usr/share/composer"
|
||||
doins -r LICENSE res src vendor
|
||||
|
||||
exeinto "/usr/share/composer/bin"
|
||||
doexe "bin/composer"
|
||||
dosym "../share/composer/bin/composer" "/usr/bin/composer"
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user