From patchwork Thu Jan 2 11:43:46 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Christopher McCrory X-Patchwork-Id: 1217055 Return-Path: X-Original-To: incoming-buildroot@patchwork.ozlabs.org Delivered-To: patchwork-incoming-buildroot@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=busybox.net (client-ip=140.211.166.133; helo=hemlock.osuosl.org; envelope-from=buildroot-bounces@busybox.net; receiver=) Authentication-Results: ozlabs.org; dmarc=fail (p=none dis=none) header.from=gmail.com Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.b="ohMtu+U5"; dkim-atps=neutral Received: from hemlock.osuosl.org (smtp2.osuosl.org [140.211.166.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 47pR626twnz9sR8 for ; Thu, 2 Jan 2020 22:44:42 +1100 (AEDT) Received: from localhost (localhost [127.0.0.1]) by hemlock.osuosl.org (Postfix) with ESMTP id 6CBD587994; Thu, 2 Jan 2020 11:44:38 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Received: from hemlock.osuosl.org ([127.0.0.1]) by localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id HpiZBLB6Thvy; Thu, 2 Jan 2020 11:44:35 +0000 (UTC) Received: from ash.osuosl.org (ash.osuosl.org [140.211.166.34]) by hemlock.osuosl.org (Postfix) with ESMTP id 6AC898798A; Thu, 2 Jan 2020 11:44:35 +0000 (UTC) X-Original-To: buildroot@lists.busybox.net Delivered-To: buildroot@osuosl.org Received: from silver.osuosl.org (smtp3.osuosl.org [140.211.166.136]) by ash.osuosl.org (Postfix) with ESMTP id 264071BF3A4 for ; Thu, 2 Jan 2020 11:44:34 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by silver.osuosl.org (Postfix) with ESMTP id 200C720499 for ; Thu, 2 Jan 2020 11:44:34 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Received: from silver.osuosl.org ([127.0.0.1]) by localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id W1sHm4hV-gRD for ; Thu, 2 Jan 2020 11:44:33 +0000 (UTC) X-Greylist: domain auto-whitelisted by SQLgrey-1.7.6 Received: from mail-pg1-f181.google.com (mail-pg1-f181.google.com [209.85.215.181]) by silver.osuosl.org (Postfix) with ESMTPS id 1569620454 for ; Thu, 2 Jan 2020 11:44:33 +0000 (UTC) Received: by mail-pg1-f181.google.com with SMTP id b9so21757237pgk.12 for ; Thu, 02 Jan 2020 03:44:33 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id; bh=o0XpiuPVJqFoZuhb0D/sWJkCqWPBhqjToBfZ0pKW6L4=; b=ohMtu+U5hf321mnov9azcKlom7cj1mqcuYrP/TPEeACZUtvCOqfYSUzTYP4d8gFsUv ENZPPuCsZCFohgQpXtYsZ2Gpgmc6V5kXnn+OVjmOnBAnSQrSaxJ6syTNEmqhEPI5kjHn 45VbWK5ba5jSdaWWQ3eEw8cS+hsSU1lYznsjSR14GApnFZRHKdIt0EsbT19Y8FYdA6It IItEmJdE3imbkevW9nBqFJaVODITw7sJNYQEtC88G3p+vZWfkrKs5eCKNvgNYaaqLGgj t2l5OBbXgABXsrBbqwxkElPb/wMVHiagl03jz2BL52v5f1w3otdtLjxTJB3D2AyiLQLQ RMZA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id; bh=o0XpiuPVJqFoZuhb0D/sWJkCqWPBhqjToBfZ0pKW6L4=; b=FSIn6topAn2WqIF76ULrXyHK7E/ljKv4qxKhcBerAZte6In6hM0Hm4iMYNYKiowcsm 5+2C0EQUmjY4/FDZLR0MROjnDNiPwR7uJ4UPg8/Jzumw0e++YVy4gMKGnF7+y5y8OJE3 8dSdxrk4K9EURuqadnB5jXRl9o7lnTG4LFj38xKp6bMn5ftHl0iq1OrgVyDrunWn3rOS CqJqvKbrIPrIkL48rIL+Vx9coLP7ekWj0nOu4E+VkEwfAhXDVCdBv5HoNcDsv5fWUJ45 tOtYZyD9ow6s3WDbcknmImb+l0ah6FcNOdcSzkGTTg+HqLZ7GTr95ZqYIvyMTuCqAyu0 jjfw== X-Gm-Message-State: APjAAAWbaNsfx6MzP6edtfjAI1G1oLeuMJEFMdsNDVqaDx0rJxvcLYIe jveOy+musP1q02Dd+nzeQ2pD1G+6 X-Google-Smtp-Source: APXvYqy8yrwim7ysx43xq59zEX7MJimoM46P7icIeD6Y3jGeG3xKB8mMRFfJqfoE1EnzSuZtl4QrEg== X-Received: by 2002:a63:f04c:: with SMTP id s12mr78047564pgj.408.1577965472151; Thu, 02 Jan 2020 03:44:32 -0800 (PST) Received: from localhost.localdomain (150.sub-174-193-143.myvzw.com. [174.193.143.150]) by smtp.gmail.com with ESMTPSA id z26sm32836851pfa.90.2020.01.02.03.44.30 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 02 Jan 2020 03:44:31 -0800 (PST) From: Christopher McCrory To: buildroot@buildroot.org Date: Thu, 2 Jan 2020 11:43:46 +0000 Message-Id: <20200102114347.2403649-1-chrismcc@gmail.com> X-Mailer: git-send-email 2.18.1 Subject: [Buildroot] [PATCH 1/2] package/perl-dbd-mysql: bump to version 4.050 X-BeenThere: buildroot@busybox.net X-Mailman-Version: 2.1.29 Precedence: list List-Id: Discussion and development of buildroot List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Christopher McCrory MIME-Version: 1.0 Errors-To: buildroot-bounces@busybox.net Sender: "buildroot" version 4.046_01 fixes compiling against mariadb and also introduces a patch that brakes with cross compiling, see patch 0001. Also the buildroot host-perl ModuleManager gets somthing wrong looking for libraries. Instead of checking in the build sysroot, it looks in the host systems /lib, /usr/lib, etc. For a successful build, the host system will also need the matching mysql libraries installed. Running ldd on mysql.so should show libmysqlclient, and libmariadb for MariaDB. If the result spits out an error about missing libraries, this is the reason. This is probably the only builtroot package where this is an issue. Signed-off-by: Christopher McCrory --- ...001-Allow-cross-compile-on-buildroot.patch | 46 +++++++++++++++++++ package/perl-dbd-mysql/perl-dbd-mysql.hash | 4 +- package/perl-dbd-mysql/perl-dbd-mysql.mk | 14 +++++- 3 files changed, 60 insertions(+), 4 deletions(-) create mode 100644 package/perl-dbd-mysql/0001-Allow-cross-compile-on-buildroot.patch diff --git a/package/perl-dbd-mysql/0001-Allow-cross-compile-on-buildroot.patch b/package/perl-dbd-mysql/0001-Allow-cross-compile-on-buildroot.patch new file mode 100644 index 0000000000..0431e0092a --- /dev/null +++ b/package/perl-dbd-mysql/0001-Allow-cross-compile-on-buildroot.patch @@ -0,0 +1,46 @@ +From e6689e55fb56a83f227e59d3fa258553d32524fa Mon Sep 17 00:00:00 2001 +From: Christopher McCrory +Date: Thu, 2 Jan 2020 07:53:20 +0000 +Subject: [PATCH 1/1] Allow cross compile on buildroot + +starting in 4.046_01 Devel::CheckLib is used to check if all needed libraries +are available. It is not cross compile friendly. Disable it and hope for the +best. + +Signed-off-by: Christopher McCrory +--- + Makefile.PL | 11 +++++++---- + 1 file changed, 7 insertions(+), 4 deletions(-) + +diff --git a/Makefile.PL b/Makefile.PL +index 0bf733c..668d722 100644 +--- a/Makefile.PL ++++ b/Makefile.PL +@@ -9,7 +9,8 @@ use Config; + use Getopt::Long; + use ExtUtils::MakeMaker; + use Data::Dumper; +-use Devel::CheckLib; ++# broken on cross compile ++# use Devel::CheckLib; + use File::Path; + use File::Copy; + use File::Basename; +@@ -207,9 +208,11 @@ MSG + + print "Checking if libs are available for compiling...\n"; + +-assert_lib( +- LIBS => ($opt->{'embedded'} ? $opt->{'embedded'} : $opt->{libs}), +-); ++print "Skipping, broken on cross compile\n"; ++ ++#assert_lib( ++# LIBS => ($opt->{'embedded'} ? $opt->{'embedded'} : $opt->{libs}), ++#); + + print "Looks good.\n\n"; + +-- +2.18.1 + diff --git a/package/perl-dbd-mysql/perl-dbd-mysql.hash b/package/perl-dbd-mysql/perl-dbd-mysql.hash index 51de476095..a2048ce5ff 100644 --- a/package/perl-dbd-mysql/perl-dbd-mysql.hash +++ b/package/perl-dbd-mysql/perl-dbd-mysql.hash @@ -1,6 +1,6 @@ # retrieved by scancpan from http://cpan.metacpan.org/ -md5 bdf4f4d899b8af29ebd8ebfb7438d05f DBD-mysql-4.046.tar.gz -sha256 6165652ec959d05b97f5413fa3dff014b78a44cf6de21ae87283b28378daf1f7 DBD-mysql-4.046.tar.gz +md5 29b1f61321d0892885ccfd0e7bc07f7f DBD-mysql-4.050.tar.gz +sha256 4f48541ff15a0a7405f76adc10f81627c33996fbf56c95c26c094444c0928d78 DBD-mysql-4.050.tar.gz # computed by scancpan sha256 7a9ba29702b957805cfa8aa63bca43175625824263232dbade0010d385ab888c LICENSE diff --git a/package/perl-dbd-mysql/perl-dbd-mysql.mk b/package/perl-dbd-mysql/perl-dbd-mysql.mk index 98521a78cf..c17788598c 100644 --- a/package/perl-dbd-mysql/perl-dbd-mysql.mk +++ b/package/perl-dbd-mysql/perl-dbd-mysql.mk @@ -4,9 +4,19 @@ # ################################################################################ -PERL_DBD_MYSQL_VERSION = 4.046 +# version 4.046_01 fixes compiling against mariadb and also introduces a patch +# that brakes with cross compiling, see patch 0001. +# Also the buildroot host-perl ModuleManager gets somthing wrong looking for +# libraries. Instead of checking in the build sysroot, it looks in the host +# systems /lib, /usr/lib, etc. For a successful build, the host system will +# also need the matching mysql libraries installed. Running ldd on mysql.so +# should show libmysqlclient, and libmariadb for MariaDB. If the result spits +# out an error about missing libraries, this is the reason. +# This is probably the only builtroot package where this is an issue. + +PERL_DBD_MYSQL_VERSION = 4.050 PERL_DBD_MYSQL_SOURCE = DBD-mysql-$(PERL_DBD_MYSQL_VERSION).tar.gz -PERL_DBD_MYSQL_SITE = $(BR2_CPAN_MIRROR)/authors/id/C/CA/CAPTTOFU +PERL_DBD_MYSQL_SITE = $(BR2_CPAN_MIRROR)/authors/id/D/DV/DVEEDEN PERL_DBD_MYSQL_DEPENDENCIES = \ host-perl-dbi \ mysql From patchwork Thu Jan 2 11:43:47 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Christopher McCrory X-Patchwork-Id: 1217054 Return-Path: X-Original-To: incoming-buildroot@patchwork.ozlabs.org Delivered-To: patchwork-incoming-buildroot@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=busybox.net (client-ip=140.211.166.137; helo=fraxinus.osuosl.org; envelope-from=buildroot-bounces@busybox.net; receiver=) Authentication-Results: ozlabs.org; dmarc=fail (p=none dis=none) header.from=gmail.com Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.b="PiUM6aog"; dkim-atps=neutral Received: from fraxinus.osuosl.org (smtp4.osuosl.org [140.211.166.137]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 47pR620kcVz9sPn for ; Thu, 2 Jan 2020 22:44:41 +1100 (AEDT) Received: from localhost (localhost [127.0.0.1]) by fraxinus.osuosl.org (Postfix) with ESMTP id 9817585540; Thu, 2 Jan 2020 11:44:39 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Received: from fraxinus.osuosl.org ([127.0.0.1]) by localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id Uhxw09G8tkNA; Thu, 2 Jan 2020 11:44:38 +0000 (UTC) Received: from ash.osuosl.org (ash.osuosl.org [140.211.166.34]) by fraxinus.osuosl.org (Postfix) with ESMTP id 05DD485A1E; Thu, 2 Jan 2020 11:44:38 +0000 (UTC) X-Original-To: buildroot@lists.busybox.net Delivered-To: buildroot@osuosl.org Received: from fraxinus.osuosl.org (smtp4.osuosl.org [140.211.166.137]) by ash.osuosl.org (Postfix) with ESMTP id 1CE8A1BF3A4 for ; Thu, 2 Jan 2020 11:44:37 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by fraxinus.osuosl.org (Postfix) with ESMTP id 18FE285A1E for ; Thu, 2 Jan 2020 11:44:37 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Received: from fraxinus.osuosl.org ([127.0.0.1]) by localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 0E21ih13U3Ly for ; Thu, 2 Jan 2020 11:44:35 +0000 (UTC) X-Greylist: domain auto-whitelisted by SQLgrey-1.7.6 Received: from mail-pj1-f65.google.com (mail-pj1-f65.google.com [209.85.216.65]) by fraxinus.osuosl.org (Postfix) with ESMTPS id 390C485540 for ; Thu, 2 Jan 2020 11:44:35 +0000 (UTC) Received: by mail-pj1-f65.google.com with SMTP id a6so3154716pjh.2 for ; Thu, 02 Jan 2020 03:44:35 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=dbPeInxvVTLxEocCwjBE/lvOCfqBmSo6nlASBM/PmS8=; b=PiUM6aogU3R684BFtsCkityDV7dWYoAB6cn2C48h/UQtBuoG5MUMdz66aotUeYzzj2 /2qfSQQAD1XZtz/e8SnNdKrONPaborYPlTm9i8/iv3u2/r+7TB5GwVUNI4tMr9s5TF62 yhwIaCs/0TiBaPvtAaAvY2SGzwb/Gr79TcS8YdYZKuB0o60rEVtD6HKGLh3KrRqQ4FDW 3c9UCuBkpqjyj6y5cpbqiZ9aIYM/77pI6hzqnFQG0DyHpk33VkJsQnmygyZHphL+RR8x aoP33V5dYyErQMyd0m/6hOM3ie7FFirW08GwRxv8l2puJutXPnkorLHtGD1Q2UpWNVMN by3w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references; bh=dbPeInxvVTLxEocCwjBE/lvOCfqBmSo6nlASBM/PmS8=; b=ipNtPeMoMDLgzEiuwdaZIbdhIBXRWoJV7HcPwxwU7Y6MtTLekNqbBmjAUpqJKdPSj4 qDOLKsDCqx8Ye4gOlZzARPsJ+p4/2UpxxGNX0AGsIYVRmir5FSc9wuTaDeO4DAz3m4IY bb+5BTAKXs5nRzOzBCsRRCSOss3IOadxSBybiKIt9WxrYd+2TCOUx6ocrVfKcYTtwQ5z dUuAksQ3rmyhRuBT/x941QqAGsw6OwaaGNRECsZ/TI4N7a0epMQ4R2APxZzK/TrjWvgn L/lFikzl/iA3gAJ9xaj2JPtuW75TTz9Rs1zx5uSubMsO+g7lTtrW39nVblkfz6OY+wYR j6CQ== X-Gm-Message-State: APjAAAWBXuS1d553+t+mWE/miOWHfKlaU2S50j/tXBBp9OY67vGzbiac CGoNTE5yxcnJboQkO2Ddx3o9bqry X-Google-Smtp-Source: APXvYqxrvykPraOSzzM3Z9/oqRuUn27cfHTREkVoV+EotlXrgXcQBubVJa58yhOMff+n94iCKOlskg== X-Received: by 2002:a17:902:547:: with SMTP id 65mr28878871plf.50.1577965474064; Thu, 02 Jan 2020 03:44:34 -0800 (PST) Received: from localhost.localdomain (150.sub-174-193-143.myvzw.com. [174.193.143.150]) by smtp.gmail.com with ESMTPSA id z26sm32836851pfa.90.2020.01.02.03.44.32 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 02 Jan 2020 03:44:33 -0800 (PST) From: Christopher McCrory To: buildroot@buildroot.org Date: Thu, 2 Jan 2020 11:43:47 +0000 Message-Id: <20200102114347.2403649-2-chrismcc@gmail.com> X-Mailer: git-send-email 2.18.1 In-Reply-To: <20200102114347.2403649-1-chrismcc@gmail.com> References: <20200102114347.2403649-1-chrismcc@gmail.com> Subject: [Buildroot] [PATCH 2/2] package/bash: bump to version 5.0.11 X-BeenThere: buildroot@busybox.net X-Mailman-Version: 2.1.29 Precedence: list List-Id: Discussion and development of buildroot List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Christopher McCrory MIME-Version: 1.0 Errors-To: buildroot-bounces@busybox.net Sender: "buildroot" bump tarball to 5.0 and download patches to get to 5.0.11 add hook to apply patches Signed-off-by: Christopher McCrory --- package/bash/0001-bash44-019.patch | 54 --------- package/bash/0002-bash44-020.patch | 181 ----------------------------- package/bash/0003-bash44-021.patch | 61 ---------- package/bash/0004-bash44-022.patch | 65 ----------- package/bash/0005-bash44-023.patch | 56 --------- package/bash/bash.hash | 16 ++- package/bash/bash.mk | 25 +++- 7 files changed, 38 insertions(+), 420 deletions(-) delete mode 100644 package/bash/0001-bash44-019.patch delete mode 100644 package/bash/0002-bash44-020.patch delete mode 100644 package/bash/0003-bash44-021.patch delete mode 100644 package/bash/0004-bash44-022.patch delete mode 100644 package/bash/0005-bash44-023.patch diff --git a/package/bash/0001-bash44-019.patch b/package/bash/0001-bash44-019.patch deleted file mode 100644 index b3d2f331b6..0000000000 --- a/package/bash/0001-bash44-019.patch +++ /dev/null @@ -1,54 +0,0 @@ -From https://ftp.gnu.org/gnu/bash/bash-4.4-patches/bash44-019 - -Signed-off-by: Peter Korsgaard - - BASH PATCH REPORT - ================= - -Bash-Release: 4.4 -Patch-ID: bash44-019 - -Bug-Reported-by: Kieran Grant -Bug-Reference-ID: -Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2018-02/msg00002.html - -Bug-Description: - -With certain values for PS1, especially those that wrap onto three or more -lines, readline will miscalculate the number of invisible characters, -leading to crashes and core dumps. - -Patch (apply with `patch -p0'): - -*** bash-4.4.18/lib/readline/display.c 2016-07-28 14:49:33.000000000 -0400 ---- b/lib/readline/display.c 2018-02-03 19:19:35.000000000 -0500 -*************** -*** 772,776 **** - wadjust = (newlines == 0) - ? prompt_invis_chars_first_line -! : ((newlines == prompt_lines_estimate) ? wrap_offset : prompt_invis_chars_first_line); - - /* fix from Darin Johnson for prompt string with ---- b/788,794 ---- - wadjust = (newlines == 0) - ? prompt_invis_chars_first_line -! : ((newlines == prompt_lines_estimate) -! ? (wrap_offset - prompt_invis_chars_first_line) -! : 0); - - /* fix from Darin Johnson for prompt string with -*** bash-4.4/patchlevel.h 2016-06-22 14:51:03.000000000 -0400 ---- b/patchlevel.h 2016-10-01 11:01:28.000000000 -0400 -*************** -*** 26,30 **** - looks for to find the patch level (for the sccs version string). */ - -! #define PATCHLEVEL 18 - - #endif /* _PATCHLEVEL_H_ */ ---- b/26,30 ---- - looks for to find the patch level (for the sccs version string). */ - -! #define PATCHLEVEL 19 - - #endif /* _PATCHLEVEL_H_ */ diff --git a/package/bash/0002-bash44-020.patch b/package/bash/0002-bash44-020.patch deleted file mode 100644 index 20f3abb586..0000000000 --- a/package/bash/0002-bash44-020.patch +++ /dev/null @@ -1,181 +0,0 @@ -From https://ftp.gnu.org/gnu/bash/bash-4.4-patches/bash44-020 - -Signed-off-by: Peter Korsgaard - - BASH PATCH REPORT - ================= - -Bash-Release: 4.4 -Patch-ID: bash44-020 - -Bug-Reported-by: Graham Northup -Bug-Reference-ID: <537530c3-61f0-349b-9de6-fa4e2487f428@clarkson.edu> -Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2017-02/msg00025.html - -Bug-Description: - -In circumstances involving long-running scripts that create and reap many -processes, it is possible for the hash table bash uses to store exit -statuses from asynchronous processes to develop loops. This patch fixes -the loop causes and adds code to detect any future loops. - -Patch (apply with `patch -p0'): - -*** bash-4.4-patched/jobs.c 2016-11-11 13:42:55.000000000 -0500 ---- b/jobs.c 2017-02-22 15:16:28.000000000 -0500 -*************** -*** 813,818 **** - struct pidstat *ps; - -! bucket = pshash_getbucket (pid); -! psi = bgp_getindex (); - ps = &bgpids.storage[psi]; - ---- b/796,815 ---- - struct pidstat *ps; - -! /* bucket == existing chain of pids hashing to same value -! psi = where were going to put this pid/status */ -! -! bucket = pshash_getbucket (pid); /* index into pidstat_table */ -! psi = bgp_getindex (); /* bgpids.head, index into storage */ -! -! /* XXX - what if psi == *bucket? */ -! if (psi == *bucket) -! { -! #ifdef DEBUG -! internal_warning ("hashed pid %d (pid %d) collides with bgpids.head, skipping", psi, pid); -! #endif -! bgpids.storage[psi].pid = NO_PID; /* make sure */ -! psi = bgp_getindex (); /* skip to next one */ -! } -! - ps = &bgpids.storage[psi]; - -*************** -*** 842,845 **** ---- b/839,843 ---- - { - struct pidstat *ps; -+ ps_index_t *bucket; - - ps = &bgpids.storage[psi]; -*************** -*** 847,856 **** - return; - -! if (ps->bucket_next != NO_PID) - bgpids.storage[ps->bucket_next].bucket_prev = ps->bucket_prev; -! if (ps->bucket_prev != NO_PID) - bgpids.storage[ps->bucket_prev].bucket_next = ps->bucket_next; - else -! *(pshash_getbucket (ps->pid)) = ps->bucket_next; - } - ---- b/845,861 ---- - return; - -! if (ps->bucket_next != NO_PIDSTAT) - bgpids.storage[ps->bucket_next].bucket_prev = ps->bucket_prev; -! if (ps->bucket_prev != NO_PIDSTAT) - bgpids.storage[ps->bucket_prev].bucket_next = ps->bucket_next; - else -! { -! bucket = pshash_getbucket (ps->pid); -! *bucket = ps->bucket_next; /* deleting chain head in hash table */ -! } -! -! /* clear out this cell, just in case */ -! ps->pid = NO_PID; -! ps->bucket_next = ps->bucket_prev = NO_PIDSTAT; - } - -*************** -*** 859,863 **** - pid_t pid; - { -! ps_index_t psi; - - if (bgpids.storage == 0 || bgpids.nalloc == 0 || bgpids.npid == 0) ---- b/864,868 ---- - pid_t pid; - { -! ps_index_t psi, orig_psi; - - if (bgpids.storage == 0 || bgpids.nalloc == 0 || bgpids.npid == 0) -*************** -*** 865,871 **** - - /* Search chain using hash to find bucket in pidstat_table */ -! for (psi = *(pshash_getbucket (pid)); psi != NO_PIDSTAT; psi = bgpids.storage[psi].bucket_next) -! if (bgpids.storage[psi].pid == pid) -! break; - - if (psi == NO_PIDSTAT) ---- b/870,883 ---- - - /* Search chain using hash to find bucket in pidstat_table */ -! for (orig_psi = psi = *(pshash_getbucket (pid)); psi != NO_PIDSTAT; psi = bgpids.storage[psi].bucket_next) -! { -! if (bgpids.storage[psi].pid == pid) -! break; -! if (orig_psi == bgpids.storage[psi].bucket_next) /* catch reported bug */ -! { -! internal_warning ("bgp_delete: LOOP: psi (%d) == storage[psi].bucket_next", psi); -! return 0; -! } -! } - - if (psi == NO_PIDSTAT) -*************** -*** 905,909 **** - pid_t pid; - { -! ps_index_t psi; - - if (bgpids.storage == 0 || bgpids.nalloc == 0 || bgpids.npid == 0) ---- b/917,921 ---- - pid_t pid; - { -! ps_index_t psi, orig_psi; - - if (bgpids.storage == 0 || bgpids.nalloc == 0 || bgpids.npid == 0) -*************** -*** 911,917 **** - - /* Search chain using hash to find bucket in pidstat_table */ -! for (psi = *(pshash_getbucket (pid)); psi != NO_PIDSTAT; psi = bgpids.storage[psi].bucket_next) -! if (bgpids.storage[psi].pid == pid) -! return (bgpids.storage[psi].status); - - return -1; ---- b/923,936 ---- - - /* Search chain using hash to find bucket in pidstat_table */ -! for (orig_psi = psi = *(pshash_getbucket (pid)); psi != NO_PIDSTAT; psi = bgpids.storage[psi].bucket_next) -! { -! if (bgpids.storage[psi].pid == pid) -! return (bgpids.storage[psi].status); -! if (orig_psi == bgpids.storage[psi].bucket_next) /* catch reported bug */ -! { -! internal_warning ("bgp_search: LOOP: psi (%d) == storage[psi].bucket_next", psi); -! return -1; -! } -! } - - return -1; -*** bash-4.4/patchlevel.h 2016-06-22 14:51:03.000000000 -0400 ---- b/patchlevel.h 2016-10-01 11:01:28.000000000 -0400 -*************** -*** 26,30 **** - looks for to find the patch level (for the sccs version string). */ - -! #define PATCHLEVEL 19 - - #endif /* _PATCHLEVEL_H_ */ ---- b/26,30 ---- - looks for to find the patch level (for the sccs version string). */ - -! #define PATCHLEVEL 20 - - #endif /* _PATCHLEVEL_H_ */ diff --git a/package/bash/0003-bash44-021.patch b/package/bash/0003-bash44-021.patch deleted file mode 100644 index 52f3b75eac..0000000000 --- a/package/bash/0003-bash44-021.patch +++ /dev/null @@ -1,61 +0,0 @@ -From https://ftp.gnu.org/gnu/bash/bash-4.4-patches/bash44-021 - -Signed-off-by: Peter Korsgaard - - BASH PATCH REPORT - ================= - -Bash-Release: 4.4 -Patch-ID: bash44-021 - -Bug-Reported-by: werner@suse.de -Bug-Reference-ID: <201803281402.w2SE2VOa000476@noether.suse.de> -Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2018-03/msg00196.html - -Bug-Description: - -A SIGINT received inside a SIGINT trap handler can possibly cause the -shell to loop. - -Patch (apply with `patch -p0'): - -*** bash-20180329/jobs.c 2018-02-11 18:07:22.000000000 -0500 ---- b/jobs.c 2018-04-02 14:24:21.000000000 -0400 -*************** -*** 2690,2694 **** - if (job_control == 0 || (subshell_environment&SUBSHELL_COMSUB)) - { -! old_sigint_handler = set_signal_handler (SIGINT, wait_sigint_handler); - waiting_for_child = 0; - if (old_sigint_handler == SIG_IGN) ---- b/2690,2704 ---- - if (job_control == 0 || (subshell_environment&SUBSHELL_COMSUB)) - { -! SigHandler *temp_sigint_handler; -! -! temp_sigint_handler = set_signal_handler (SIGINT, wait_sigint_handler); -! if (temp_sigint_handler == wait_sigint_handler) -! { -! #if defined (DEBUG) -! internal_warning ("wait_for: recursively setting old_sigint_handler to wait_sigint_handler: running_trap = %d", running_trap); -! #endif -! } -! else -! old_sigint_handler = temp_sigint_handler; - waiting_for_child = 0; - if (old_sigint_handler == SIG_IGN) -*** bash-4.4/patchlevel.h 2016-06-22 14:51:03.000000000 -0400 ---- b/patchlevel.h 2016-10-01 11:01:28.000000000 -0400 -*************** -*** 26,30 **** - looks for to find the patch level (for the sccs version string). */ - -! #define PATCHLEVEL 20 - - #endif /* _PATCHLEVEL_H_ */ ---- b/26,30 ---- - looks for to find the patch level (for the sccs version string). */ - -! #define PATCHLEVEL 21 - - #endif /* _PATCHLEVEL_H_ */ diff --git a/package/bash/0004-bash44-022.patch b/package/bash/0004-bash44-022.patch deleted file mode 100644 index 0db270a17e..0000000000 --- a/package/bash/0004-bash44-022.patch +++ /dev/null @@ -1,65 +0,0 @@ -From https://ftp.gnu.org/gnu/bash/bash-4.4-patches/bash44-022 - -Signed-off-by: Peter Korsgaard - - BASH PATCH REPORT - ================= - -Bash-Release: 4.4 -Patch-ID: bash44-022 - -Bug-Reported-by: Nuzhna Pomoshch -Bug-Reference-ID: <1317167476.1492079.1495999776464@mail.yahoo.com> -Bug-Reference-URL: https://lists.gnu.org/archive/html/bug-readline/2017-05/msg00005.html - -Bug-Description: - -There are cases where a failing readline command (e.g., delete-char at the end -of a line) can cause a multi-character key sequence to `back up' and attempt -to re-read some of the characters in the sequence. - -Patch (apply with `patch -p0'): - -*** bash-4.4-patched/lib/readline/readline.c 2016-04-20 15:53:52.000000000 -0400 ---- b/lib/readline/readline.c 2018-05-26 17:19:00.000000000 -0400 -*************** -*** 1058,1062 **** - r = _rl_dispatch (ANYOTHERKEY, m); - } -! else if (r && map[ANYOTHERKEY].function) - { - /* We didn't match (r is probably -1), so return something to ---- b/1056,1060 ---- - r = _rl_dispatch (ANYOTHERKEY, m); - } -! else if (r < 0 && map[ANYOTHERKEY].function) - { - /* We didn't match (r is probably -1), so return something to -*************** -*** 1070,1074 **** - return -2; - } -! else if (r && got_subseq) - { - /* OK, back up the chain. */ ---- b/1068,1072 ---- - return -2; - } -! else if (r < 0 && got_subseq) /* XXX */ - { - /* OK, back up the chain. */ -*** bash-4.4/patchlevel.h 2016-06-22 14:51:03.000000000 -0400 ---- b/patchlevel.h 2016-10-01 11:01:28.000000000 -0400 -*************** -*** 26,30 **** - looks for to find the patch level (for the sccs version string). */ - -! #define PATCHLEVEL 21 - - #endif /* _PATCHLEVEL_H_ */ ---- b/26,30 ---- - looks for to find the patch level (for the sccs version string). */ - -! #define PATCHLEVEL 22 - - #endif /* _PATCHLEVEL_H_ */ diff --git a/package/bash/0005-bash44-023.patch b/package/bash/0005-bash44-023.patch deleted file mode 100644 index 05b18902a5..0000000000 --- a/package/bash/0005-bash44-023.patch +++ /dev/null @@ -1,56 +0,0 @@ -From https://ftp.gnu.org/gnu/bash/bash-4.4-patches/bash44-023 - -Signed-off-by: Peter Korsgaard - - BASH PATCH REPORT - ================= - -Bash-Release: 4.4 -Patch-ID: bash44-023 - -Bug-Reported-by: Martijn Dekker -Bug-Reference-ID: <5326d6b9-2625-1d32-3e6e-ad1d15462c09@inlv.org> -Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2016-11/msg00041.html - -Bug-Description: - -When sourcing a file from an interactive shell, setting the SIGINT handler -to the default and typing ^C will cause the shell to exit. - -Patch (apply with `patch -p0'): - -*** bash-4.4-patched/builtins/trap.def 2016-01-25 13:32:38.000000000 -0500 ---- b/builtins/trap.def 2016-11-06 12:04:35.000000000 -0500 -*************** -*** 99,102 **** ---- b/99,103 ---- - - extern int posixly_correct, subshell_environment; -+ extern int sourcelevel, running_trap; - - int -*************** -*** 213,216 **** ---- b/214,220 ---- - if (interactive) - set_signal_handler (SIGINT, sigint_sighandler); -+ /* special cases for interactive == 0 */ -+ else if (interactive_shell && (sourcelevel||running_trap)) -+ set_signal_handler (SIGINT, sigint_sighandler); - else - set_signal_handler (SIGINT, termsig_sighandler); -*** bash-4.4/patchlevel.h 2016-06-22 14:51:03.000000000 -0400 ---- b/patchlevel.h 2016-10-01 11:01:28.000000000 -0400 -*************** -*** 26,30 **** - looks for to find the patch level (for the sccs version string). */ - -! #define PATCHLEVEL 22 - - #endif /* _PATCHLEVEL_H_ */ ---- b/26,30 ---- - looks for to find the patch level (for the sccs version string). */ - -! #define PATCHLEVEL 23 - - #endif /* _PATCHLEVEL_H_ */ diff --git a/package/bash/bash.hash b/package/bash/bash.hash index 951bcf5850..76b12803f9 100644 --- a/package/bash/bash.hash +++ b/package/bash/bash.hash @@ -1,4 +1,16 @@ # Locally calculated after checking pgp signature from -# http://ftp.gnu.org/gnu/bash/bash-4.4.18.tar.gz.sig -sha256 604d9eec5e4ed5fd2180ee44dd756ddca92e0b6aa4217bbab2b6227380317f23 bash-4.4.18.tar.gz +# http://ftp.gnu.org/gnu/bash/bash-5.0.tar.gz.sig +# Primary key fingerprint: 7C01 35FB 088A AF6C 66C6 50B9 BB58 69F0 64EA 74AB +sha256 b4a80f2ac66170b2913efbfb9f2594f1f76c7b1afd11f799e22035d63077fb4d bash-5.0.tar.gz +sha256 f2fe9e1f0faddf14ab9bfa88d450a75e5d028fedafad23b88716bd657c737289 bash50-001 +sha256 87e87d3542e598799adb3e7e01c8165bc743e136a400ed0de015845f7ff68707 bash50-002 +sha256 4eebcdc37b13793a232c5f2f498a5fcbf7da0ecb3da2059391c096db620ec85b bash50-003 +sha256 14447ad832add8ecfafdce5384badd933697b559c4688d6b9e3d36ff36c62f08 bash50-004 +sha256 5bf54dd9bd2c211d2bfb34a49e2c741f2ed5e338767e9ce9f4d41254bf9f8276 bash50-005 +sha256 d68529a6ff201b6ff5915318ab12fc16b8a0ebb77fda3308303fcc1e13398420 bash50-006 +sha256 17b41e7ee3673d8887dd25992417a398677533ab8827938aa41fad70df19af9b bash50-007 +sha256 eec64588622a82a5029b2776e218a75a3640bef4953f09d6ee1f4199670ad7e3 bash50-008 +sha256 ed3ca21767303fc3de93934aa524c2e920787c506b601cc40a4897d4b094d903 bash50-009 +sha256 d6fbc325f0b5dc54ddbe8ee43020bced8bd589ddffea59d128db14b2e52a8a11 bash50-010 +sha256 2c4de332b91eaf797abbbd6c79709690b5cbd48b12e8dfe748096dbd7bf474ea bash50-011 sha256 8ceb4b9ee5adedde47b31e975c1d90c73ad27b6b165a1dcd80c7c545eb65b903 COPYING diff --git a/package/bash/bash.mk b/package/bash/bash.mk index 7fb7192e2c..b9a7840c19 100644 --- a/package/bash/bash.mk +++ b/package/bash/bash.mk @@ -4,12 +4,35 @@ # ################################################################################ -BASH_VERSION = 4.4.18 +BASH_VERSION = 5.0 BASH_SITE = $(BR2_GNU_MIRROR)/bash BASH_DEPENDENCIES = ncurses readline host-bison BASH_CONF_OPTS = --with-installed-readline --without-bash-malloc BASH_LICENSE = GPL-3.0+ BASH_LICENSE_FILES = COPYING +BASH_PATCH = \ + bash-5.0-patches/bash50-001 \ + bash-5.0-patches/bash50-002 \ + bash-5.0-patches/bash50-003 \ + bash-5.0-patches/bash50-004 \ + bash-5.0-patches/bash50-005 \ + bash-5.0-patches/bash50-006 \ + bash-5.0-patches/bash50-007 \ + bash-5.0-patches/bash50-008 \ + bash-5.0-patches/bash50-009 \ + bash-5.0-patches/bash50-010 \ + bash-5.0-patches/bash50-011 + +# The patches do not have an extension that support/scripts/apply-patches.sh +# recognizes, so do manually. +define BASH_PATCH_MANUALLY + for patch in $(BASH_PATCH) ; do \ + patch -p0 -d $(@D) -i $(BASH_DL_DIR)/$${patch/bash-5.0-patches/}; \ + echo "$${patch}" >> $(@D)/.applied_patches_list; \ + done +endef + +BASH_PRE_PATCH_HOOKS += BASH_PATCH_MANUALLY BASH_CONF_ENV += \ ac_cv_rl_prefix="$(STAGING_DIR)" \