commit: 86d95b5acf65ab3c47f645575728278d42c950e0 Author: Michael Orlitzky <mjo <AT> gentoo <DOT> org> AuthorDate: Thu Aug 3 13:22:09 2023 +0000 Commit: Michael Orlitzky <mjo <AT> gentoo <DOT> org> CommitDate: Thu Aug 3 13:26:23 2023 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=86d95b5a
app-admin/drush: fix a "drush up" warning with php-8.1. Signed-off-by: Michael Orlitzky <mjo <AT> gentoo.org> app-admin/drush/drush-6.7.0-r5.ebuild | 69 ++++++++++++++++++++++ .../drush-6.7.0-dont-pass-null-to-strtoupper.patch | 26 ++++++++ 2 files changed, 95 insertions(+) diff --git a/app-admin/drush/drush-6.7.0-r5.ebuild b/app-admin/drush/drush-6.7.0-r5.ebuild new file mode 100644 index 000000000000..a4f2be23bf54 --- /dev/null +++ b/app-admin/drush/drush-6.7.0-r5.ebuild @@ -0,0 +1,69 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit bash-completion-r1 + +DESCRIPTION="Command line shell and scripting interface for Drupal" +HOMEPAGE="https://github.com/drush-ops/drush" +SRC_URI="https://github.com/drush-ops/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~x86" +IUSE="" + +DEPEND="" +RDEPEND="dev-lang/php[cli,ctype,json(+),simplexml] + dev-php/PEAR-Console_Table" + +PATCHES=( + "${FILESDIR}/update-bash-completion-script-for-2.1.patch" + "${FILESDIR}/array-syntax.patch" + "${FILESDIR}/${P}-php8.0.patch" + "${FILESDIR}/${P}-gzip-mime.patch" + "${FILESDIR}/${P}-dont-pass-null-to-strtoupper.patch" +) + +src_prepare() { + default + + # dodoc compresses all of the documentation, so we fix the filenames + # in a few places. + # + # First, the README location in bootstrap.inc. + sed -i -e \ + "s!/share/doc/drush!/share/doc/${PF}!" \ + -e "s!README\.md!\0.bz2!g" \ + includes/bootstrap.inc || die + + # Next, the list of documentation in docs.drush.inc. Note that + # html files don't get compressed. + sed -i \ + -e "s!\.bashrc'!.bashrc.bz2'!" \ + -e "s!\.inc'!.inc.bz2'!" \ + -e "s!\.ini'!.ini.bz2'!" \ + -e "s!\.md'!.md.bz2'!" \ + -e "s!\.php'!.php.bz2'!" \ + -e "s!\.script'!.script.bz2'!" \ + -e "s!\.txt'!.txt.bz2'!" \ + commands/core/docs.drush.inc || die +} + +src_install() { + # Always install the examples; they're referenced within the source + # code and too difficult to exorcise. + dodoc -r README.md docs examples + + insinto /usr/share/drush + doins -r classes commands includes lib misc + doins drush_logo-black.png drush.info drush.php + + exeinto /usr/share/drush + doexe drush + dosym ../share/drush/drush /usr/bin/drush + + keepdir /etc/drush + newbashcomp drush.complete.sh drush +} diff --git a/app-admin/drush/files/drush-6.7.0-dont-pass-null-to-strtoupper.patch b/app-admin/drush/files/drush-6.7.0-dont-pass-null-to-strtoupper.patch new file mode 100644 index 000000000000..408a271ce38f --- /dev/null +++ b/app-admin/drush/files/drush-6.7.0-dont-pass-null-to-strtoupper.patch @@ -0,0 +1,26 @@ +From 621cb8db059f3dff434dc369ab46faf3a2efa539 Mon Sep 17 00:00:00 2001 +From: Michael Orlitzky <mich...@orlitzky.com> +Date: Thu, 3 Aug 2023 08:52:35 -0400 +Subject: [PATCH 1/1] includes/environment.inc: don't pass null to + strtoupper(). + +--- + includes/environment.inc | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/includes/environment.inc b/includes/environment.inc +index 7837104..dd2c71d 100644 +--- a/includes/environment.inc ++++ b/includes/environment.inc +@@ -736,7 +736,7 @@ function _drush_get_os($os = NULL) { + // that the path be converted to /cygdrive/c/path, even on DOS or Powershell. + // The special os "RSYNC" can be used to indicate that we want to assume + // "CWRSYNC" when cwrsync is installed, or default to the local OS otherwise. +- if (strtoupper($os) == "RSYNC") { ++ if (isset($os) && strtoupper($os) == "RSYNC") { + $os = _drush_get_os("LOCAL"); + // For now we assume that cwrsync is always installed on Windows, and never installed son any other platform. + return drush_is_windows($os) ? "CWRSYNC" : $os; +-- +2.39.3 +