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
+

Reply via email to