bash: Update to 5.2
sync with g4w
This commit is contained in:
parent
474ece2114
commit
150d823c24
@ -1,6 +1,8 @@
|
||||
--- bash-4.4/bashline.c 2017-01-27 12:21:44.670146700 -0600
|
||||
+++ bash-4.4/bashline.c 2017-01-27 13:11:50.793821100 -0600
|
||||
@@ -76,6 +76,16 @@
|
||||
diff --git a/bashline.c b/bashline.c
|
||||
index c85b05b..8f69bc6 100644
|
||||
--- a/bashline.c
|
||||
+++ b/bashline.c
|
||||
@@ -80,6 +80,16 @@
|
||||
# include "pcomplete.h"
|
||||
#endif
|
||||
|
||||
@ -17,7 +19,7 @@
|
||||
/* These should agree with the defines for emacs_mode and vi_mode in
|
||||
rldefs.h, even though that's not a public readline header file. */
|
||||
#ifndef EMACS_EDITING_MODE
|
||||
@@ -271,6 +281,11 @@ int no_empty_command_completion;
|
||||
@@ -290,6 +300,11 @@ int no_empty_command_completion;
|
||||
are the only possible matches, even if FIGNORE says to. */
|
||||
int force_fignore = 1;
|
||||
|
||||
@ -29,7 +31,7 @@
|
||||
/* Perform spelling correction on directory names during word completion */
|
||||
int dircomplete_spelling = 0;
|
||||
|
||||
@@ -498,11 +513,12 @@ initialize_readline ()
|
||||
@@ -536,11 +551,12 @@ initialize_readline ()
|
||||
kseq[0] = CTRL('J');
|
||||
kseq[1] = '\0';
|
||||
func = rl_function_of_keyseq (kseq, emacs_meta_keymap, (int *)NULL);
|
||||
@ -43,8 +45,8 @@
|
||||
+ if (func == rl_vi_editing_mode || func == IMP(rl_vi_editing_mode))
|
||||
rl_unbind_key_in_map (CTRL('M'), emacs_meta_keymap);
|
||||
#if defined (VI_MODE)
|
||||
rl_unbind_key_in_map (CTRL('E'), vi_movement_keymap);
|
||||
@@ -521,7 +537,8 @@ initialize_readline ()
|
||||
kseq[0] = CTRL('E');
|
||||
@@ -562,7 +578,8 @@ initialize_readline ()
|
||||
kseq[0] = '~';
|
||||
kseq[1] = '\0';
|
||||
func = rl_function_of_keyseq (kseq, emacs_meta_keymap, (int *)NULL);
|
||||
@ -54,7 +56,7 @@
|
||||
rl_bind_keyseq_in_map (kseq, bash_complete_username, emacs_meta_keymap);
|
||||
|
||||
rl_bind_key_if_unbound_in_map ('~', bash_possible_username_completions, emacs_ctlx_keymap);
|
||||
@@ -544,7 +561,8 @@ initialize_readline ()
|
||||
@@ -585,7 +602,8 @@ initialize_readline ()
|
||||
kseq[0] = TAB;
|
||||
kseq[1] = '\0';
|
||||
func = rl_function_of_keyseq (kseq, emacs_meta_keymap, (int *)NULL);
|
||||
@ -64,7 +66,7 @@
|
||||
rl_bind_key_in_map (TAB, dynamic_complete_history, emacs_meta_keymap);
|
||||
|
||||
/* Tell the completer that we want a crack first. */
|
||||
@@ -2194,6 +2212,21 @@ globword:
|
||||
@@ -2377,6 +2395,21 @@ globword:
|
||||
|
||||
if (match && executable_completion ((searching_path ? val : cval), searching_path))
|
||||
{
|
||||
@ -86,7 +88,7 @@
|
||||
if (cval != val)
|
||||
free (cval);
|
||||
free (val);
|
||||
@@ -2929,6 +2962,17 @@ test_for_directory (name)
|
||||
@@ -3124,6 +3157,17 @@ test_for_directory (name)
|
||||
int r;
|
||||
|
||||
fn = bash_tilde_expand (name, 0);
|
||||
@ -104,9 +106,11 @@
|
||||
r = file_isdir (fn);
|
||||
free (fn);
|
||||
|
||||
--- bash-4.4/builtins/read.def 2017-01-27 12:21:44.732540800 -0600
|
||||
+++ bash-4.4/builtins/read.def 2017-01-27 13:11:50.793821100 -0600
|
||||
@@ -85,7 +85,6 @@ $END
|
||||
diff --git a/builtins/read.def b/builtins/read.def
|
||||
index 3c38bc0..62a5e07 100644
|
||||
--- a/builtins/read.def
|
||||
+++ b/builtins/read.def
|
||||
@@ -86,7 +86,6 @@ $END
|
||||
|
||||
#ifdef __CYGWIN__
|
||||
# include <fcntl.h>
|
||||
@ -114,7 +118,7 @@
|
||||
#endif
|
||||
|
||||
#include "../bashintl.h"
|
||||
@@ -530,10 +529,6 @@ read_builtin (list)
|
||||
@@ -611,10 +610,6 @@ read_builtin (list)
|
||||
fflush (stderr);
|
||||
}
|
||||
|
||||
@ -125,7 +129,7 @@
|
||||
ps2 = 0;
|
||||
for (print_ps2 = eof = retval = 0;;)
|
||||
{
|
||||
@@ -664,6 +659,14 @@ read_builtin (list)
|
||||
@@ -768,6 +763,14 @@ read_builtin (list)
|
||||
if (c == '\0' && delim != '\0')
|
||||
continue; /* skip NUL bytes in input */
|
||||
|
||||
@ -140,19 +144,21 @@
|
||||
if ((skip_ctlesc == 0 && c == CTLESC) || (skip_ctlnul == 0 && c == CTLNUL))
|
||||
{
|
||||
saw_escape++;
|
||||
--- bash-5.1/builtins/set.def.orig 2020-08-03 20:31:43.000000000 +0200
|
||||
+++ bash-5.1/builtins/set.def 2020-12-19 16:38:45.649368400 +0100
|
||||
@@ -85,6 +85,9 @@
|
||||
diff --git a/builtins/set.def b/builtins/set.def
|
||||
index 44f1769..51f28d2 100644
|
||||
--- a/builtins/set.def
|
||||
+++ b/builtins/set.def
|
||||
@@ -84,6 +84,9 @@ Options:
|
||||
#endif /* BANG_HISTORY */
|
||||
#if defined (HISTORY)
|
||||
history enable command history
|
||||
#endif
|
||||
+#endif
|
||||
+#ifdef __CYGWIN__
|
||||
+ igncr on Cygwin, ignore \r in line endings
|
||||
+#endif
|
||||
#endif
|
||||
ignoreeof the shell will not exit upon reading EOF
|
||||
interactive-comments
|
||||
allow comments to appear in interactive commands
|
||||
@@ -176,6 +179,14 @@
|
||||
@@ -176,6 +179,14 @@ static const char * const off = "off";
|
||||
|
||||
static int previous_option_value;
|
||||
|
||||
@ -167,7 +173,7 @@
|
||||
/* A struct used to match long options for set -o to the corresponding
|
||||
option letter or internal variable. The functions can be called to
|
||||
dynamically generate values. If you add a new variable name here
|
||||
@@ -187,29 +198,39 @@
|
||||
@@ -187,29 +198,39 @@ const struct {
|
||||
int *variable;
|
||||
setopt_set_func_t *set_func;
|
||||
setopt_get_func_t *get_func;
|
||||
@ -211,7 +217,7 @@
|
||||
#endif
|
||||
{ "noclobber", 'C', (int *)NULL, (setopt_set_func_t *)NULL, (setopt_get_func_t *)NULL },
|
||||
{ "noexec", 'n', (int *)NULL, (setopt_set_func_t *)NULL, (setopt_get_func_t *)NULL },
|
||||
@@ -228,7 +249,7 @@
|
||||
@@ -228,7 +249,7 @@ const struct {
|
||||
{ "privileged", 'p', (int *)NULL, (setopt_set_func_t *)NULL, (setopt_get_func_t *)NULL },
|
||||
{ "verbose", 'v', (int *)NULL, (setopt_set_func_t *)NULL, (setopt_get_func_t *)NULL },
|
||||
#if defined (READLINE)
|
||||
@ -220,7 +226,7 @@
|
||||
#endif
|
||||
{ "xtrace", 'x', (int *)NULL, (setopt_set_func_t *)NULL, (setopt_get_func_t *)NULL },
|
||||
{(char *)NULL, 0 , (int *)NULL, (setopt_set_func_t *)NULL, (setopt_get_func_t *)NULL },
|
||||
@@ -486,6 +507,15 @@
|
||||
@@ -486,6 +507,15 @@ int
|
||||
set_minus_o_option (on_or_off, option_name)
|
||||
int on_or_off;
|
||||
char *option_name;
|
||||
@ -236,7 +242,7 @@
|
||||
{
|
||||
register int i;
|
||||
|
||||
@@ -496,6 +526,10 @@
|
||||
@@ -496,6 +526,10 @@ set_minus_o_option (on_or_off, option_name)
|
||||
return (EX_USAGE);
|
||||
}
|
||||
|
||||
@ -247,7 +253,7 @@
|
||||
if (o_options[i].letter == 0)
|
||||
{
|
||||
previous_option_value = GET_BINARY_O_OPTION_VALUE (i, o_options[i].name);
|
||||
@@ -616,7 +650,11 @@
|
||||
@@ -616,7 +650,11 @@ parse_shellopts (value)
|
||||
vptr = 0;
|
||||
while (vname = extract_colon_unit (value, &vptr))
|
||||
{
|
||||
@ -259,11 +265,13 @@
|
||||
free (vname);
|
||||
}
|
||||
}
|
||||
--- bash-5.1/builtins/shopt.def.orig 2020-12-19 16:11:42.347711100 +0100
|
||||
+++ bash-5.1/builtins/shopt.def 2020-12-19 16:11:50.709182800 +0100
|
||||
@@ -94,6 +94,10 @@
|
||||
extern int localvar_inherit;
|
||||
extern int localvar_unset;
|
||||
diff --git a/builtins/shopt.def b/builtins/shopt.def
|
||||
index 33d61d4..21eff3b 100644
|
||||
--- a/builtins/shopt.def
|
||||
+++ b/builtins/shopt.def
|
||||
@@ -98,6 +98,10 @@ extern int varassign_redir_autoclose;
|
||||
extern int singlequote_translations;
|
||||
extern int patsub_replacement;
|
||||
|
||||
+#ifdef __CYGWIN__
|
||||
+extern int completion_strip_exe;
|
||||
@ -272,7 +280,7 @@
|
||||
#if defined (EXTENDED_GLOB)
|
||||
extern int extended_glob;
|
||||
#endif
|
||||
@@ -182,6 +186,9 @@
|
||||
@@ -191,6 +195,9 @@ static struct {
|
||||
{ "compat42", &shopt_compat42, set_compatibility_level },
|
||||
{ "compat43", &shopt_compat43, set_compatibility_level },
|
||||
{ "compat44", &shopt_compat44, set_compatibility_level },
|
||||
@ -282,9 +290,11 @@
|
||||
#if defined (READLINE)
|
||||
{ "complete_fullquote", &complete_fullquote, (shopt_set_func_t *)NULL},
|
||||
{ "direxpand", &dircomplete_expand, shopt_set_complete_direxpand },
|
||||
--- bash-4.4/config-top.h 2016-05-19 13:34:02.000000000 -0500
|
||||
+++ bash-4.4/config-top.h 2017-01-27 13:11:50.793821100 -0600
|
||||
@@ -87,10 +87,10 @@
|
||||
diff --git a/config-top.h b/config-top.h
|
||||
index db4ab6e..8720ec8 100644
|
||||
--- a/config-top.h
|
||||
+++ b/config-top.h
|
||||
@@ -97,10 +97,10 @@
|
||||
#define DEFAULT_BASHRC "~/.bashrc"
|
||||
|
||||
/* System-wide .bashrc file for interactive shells. */
|
||||
@ -297,27 +307,29 @@
|
||||
|
||||
/* Define this to make non-interactive shells begun with argv[0][0] == '-'
|
||||
run the startup files when not in posix mode. */
|
||||
@@ -100,7 +100,7 @@
|
||||
@@ -110,7 +110,7 @@
|
||||
sshd and source the .bashrc if so (like the rshd behavior). This checks
|
||||
for the presence of SSH_CLIENT or SSH2_CLIENT in the initial environment,
|
||||
which can be fooled under certain not-uncommon circumstances. */
|
||||
-/* #define SSH_SOURCE_BASHRC */
|
||||
+#define SSH_SOURCE_BASHRC
|
||||
|
||||
/* Define if you want the case-capitalizing operators (~[~]) and the
|
||||
/* Define if you want the case-toggling operators (~[~]) and the
|
||||
`capcase' variable attribute (declare -c). */
|
||||
--- bash-4.4/doc/Makefile.in 2015-12-06 18:55:56.000000000 -0600
|
||||
+++ bash-4.4/doc/Makefile.in 2017-01-27 13:11:50.793821100 -0600
|
||||
@@ -189,7 +189,7 @@ bashref.html: $(BASHREF_FILES) $(HSUSER)
|
||||
$(MAKEINFO) --html --no-split -I$(TEXINPUTDIR) $(srcdir)/bashref.texi
|
||||
diff --git a/doc/Makefile.in b/doc/Makefile.in
|
||||
index 8bf775e..923c9c3 100644
|
||||
--- a/doc/Makefile.in
|
||||
+++ b/doc/Makefile.in
|
||||
@@ -191,7 +191,7 @@ bashref.html: $(BASHREF_FILES) $(HSUSER) $(RLUSER)
|
||||
|
||||
bash.info: bashref.info
|
||||
- ${SHELL} ${INFOPOST} < $(srcdir)/bashref.info > $@ ; \
|
||||
+ ${SHELL} ${INFOPOST} < bashref.info > $@ ; \
|
||||
bash.info: $(BASHREF_FILES) $(HSUSER) $(RLUSER)
|
||||
$(RM) $@
|
||||
- $(MAKEINFO) -o $@ --no-split -I$(TEXINPUTDIR) $(srcdir)/bashref.texi
|
||||
+ $(MAKEINFO) -o $@ --no-split -I$(TEXINPUTDIR) bashref.texi
|
||||
|
||||
bash.txt: bash.1
|
||||
bash.ps: bash.1
|
||||
@@ -252,9 +252,9 @@ install: info installdirs
|
||||
@@ -254,9 +254,9 @@ install: info installdirs
|
||||
-$(INSTALL_DATA) $(srcdir)/bashbug.1 $(DESTDIR)$(man1dir)/bashbug${man1ext}
|
||||
-$(INSTALL_DATA) $(OTHER_DOCS) $(DESTDIR)$(docdir)
|
||||
# uncomment the next lines to install the builtins man page
|
||||
@ -330,9 +342,11 @@
|
||||
-if test -f bash.info; then d=.; else d=$(srcdir); fi; \
|
||||
$(INSTALL_DATA) $$d/bash.info $(DESTDIR)$(infodir)/bash.info
|
||||
# run install-info if it is present to update the info directory
|
||||
--- bash-4.4/doc/bash.1 2016-08-26 08:45:17.000000000 -0500
|
||||
+++ bash-4.4/doc/bash.1 2017-01-27 13:11:50.809402700 -0600
|
||||
@@ -9607,6 +9607,10 @@ filenames.
|
||||
diff --git a/doc/bash.1 b/doc/bash.1
|
||||
index 55c5622..18f9676 100644
|
||||
--- a/doc/bash.1
|
||||
+++ b/doc/bash.1
|
||||
@@ -10359,6 +10359,10 @@ filenames.
|
||||
This variable is set by default, which is the default bash behavior in
|
||||
versions through 4.2.
|
||||
.TP 8
|
||||
@ -343,9 +357,11 @@
|
||||
.B direxpand
|
||||
If set,
|
||||
.B bash
|
||||
--- bash-4.4/doc/bashref.texi 2016-09-07 16:13:36.000000000 -0500
|
||||
+++ bash-4.4/doc/bashref.texi 2017-01-27 13:11:50.809402700 -0600
|
||||
@@ -5123,6 +5123,10 @@ filenames.
|
||||
diff --git a/doc/bashref.texi b/doc/bashref.texi
|
||||
index b0dc2fa..3793830 100644
|
||||
--- a/doc/bashref.texi
|
||||
+++ b/doc/bashref.texi
|
||||
@@ -5650,6 +5650,10 @@ filenames.
|
||||
This variable is set by default, which is the default Bash behavior in
|
||||
versions through 4.2.
|
||||
|
||||
@ -356,9 +372,11 @@
|
||||
@item direxpand
|
||||
If set, Bash
|
||||
replaces directory names with the results of word expansion when performing
|
||||
--- bash-4.4/doc/builtins.1 2012-02-21 13:32:05.000000000 -0600
|
||||
+++ bash-4.4/doc/builtins.1 2017-01-27 13:11:50.809402700 -0600
|
||||
@@ -19,6 +19,6 @@ shift, shopt, source, suspend, test, tim
|
||||
diff --git a/doc/builtins.1 b/doc/builtins.1
|
||||
index 43d92a2..3824dd7 100644
|
||||
--- a/doc/builtins.1
|
||||
+++ b/doc/builtins.1
|
||||
@@ -19,6 +19,6 @@ shift, shopt, source, suspend, test, times, trap, true, type, typeset,
|
||||
ulimit, umask, unalias, unset, wait \- bash built-in commands, see \fBbash\fR(1)
|
||||
.SH BASH BUILTIN COMMANDS
|
||||
.nr zZ 1
|
||||
@ -366,8 +384,10 @@
|
||||
+.so man1/bash.1
|
||||
.SH SEE ALSO
|
||||
bash(1), sh(1)
|
||||
--- bash-5.1/general.c.orig 2020-07-28 20:35:53.000000000 +0200
|
||||
+++ bash-5.1/general.c 2020-12-19 16:06:23.582528400 +0100
|
||||
diff --git a/general.c b/general.c
|
||||
index 85c5a8b..f4c2a2f 100644
|
||||
--- a/general.c
|
||||
+++ b/general.c
|
||||
@@ -54,6 +54,10 @@
|
||||
|
||||
#include <tilde/tilde.h>
|
||||
@ -379,7 +399,7 @@
|
||||
#if !defined (errno)
|
||||
extern int errno;
|
||||
#endif /* !errno */
|
||||
@@ -830,7 +834,7 @@
|
||||
@@ -839,7 +843,7 @@ make_absolute (string, dot_path)
|
||||
char pathbuf[PATH_MAX + 1];
|
||||
|
||||
/* WAS cygwin_conv_to_full_posix_path (string, pathbuf); */
|
||||
@ -388,10 +408,12 @@
|
||||
result = savestring (pathbuf);
|
||||
}
|
||||
#else
|
||||
--- bash-4.4/input.c 2015-09-24 18:49:23.000000000 -0500
|
||||
+++ bash-4.4/input.c 2017-01-27 13:11:50.809402700 -0600
|
||||
@@ -44,6 +44,10 @@
|
||||
#include "quit.h"
|
||||
diff --git a/input.c b/input.c
|
||||
index 7b439f8..3944585 100644
|
||||
--- a/input.c
|
||||
+++ b/input.c
|
||||
@@ -41,6 +41,10 @@
|
||||
#include "externs.h"
|
||||
#include "trap.h"
|
||||
|
||||
+#ifdef __CYGWIN__
|
||||
@ -401,9 +423,9 @@
|
||||
#if !defined (errno)
|
||||
extern int errno;
|
||||
#endif /* !errno */
|
||||
@@ -561,6 +565,19 @@ buffered_getchar ()
|
||||
{
|
||||
CHECK_TERMSIG;
|
||||
@@ -572,6 +576,19 @@ buffered_getchar ()
|
||||
if (bash_input.location.buffered_fd < 0 || buffers[bash_input.location.buffered_fd] == 0)
|
||||
return EOF;
|
||||
|
||||
+#ifdef __CYGWIN__
|
||||
+ /* shopt igncr discards carriage returns from the input stream.
|
||||
@ -421,8 +443,10 @@
|
||||
#if !defined (DJGPP)
|
||||
return (bufstream_getc (buffers[bash_input.location.buffered_fd]));
|
||||
#else
|
||||
--- bash-4.4/lib/sh/pathphys.c 2013-05-28 14:33:58.000000000 -0500
|
||||
+++ bash-4.4/lib/sh/pathphys.c 2017-01-27 13:11:50.809402700 -0600
|
||||
diff --git a/lib/sh/pathphys.c b/lib/sh/pathphys.c
|
||||
index 95b72f1..f7edbed 100644
|
||||
--- a/lib/sh/pathphys.c
|
||||
+++ b/lib/sh/pathphys.c
|
||||
@@ -35,6 +35,7 @@
|
||||
#include <stdio.h>
|
||||
#include <chartypes.h>
|
||||
@ -453,8 +477,10 @@
|
||||
double_slash_path = DOUBLE_SLASH (workpath);
|
||||
qbase += double_slash_path;
|
||||
|
||||
--- bash-4.4/lib/sh/tmpfile.c 2016-08-11 10:05:58.000000000 -0500
|
||||
+++ bash-4.4/lib/sh/tmpfile.c 2017-01-27 13:11:50.809402700 -0600
|
||||
diff --git a/lib/sh/tmpfile.c b/lib/sh/tmpfile.c
|
||||
index ef8b067..2c18ee3 100644
|
||||
--- a/lib/sh/tmpfile.c
|
||||
+++ b/lib/sh/tmpfile.c
|
||||
@@ -101,7 +101,7 @@ get_tmpdir (flags)
|
||||
if (tdir && (file_iswdir (tdir) == 0 || strlen (tdir) > PATH_MAX))
|
||||
tdir = 0;
|
||||
@ -464,8 +490,10 @@
|
||||
tdir = get_sys_tmpdir ();
|
||||
|
||||
#if defined (HAVE_PATHCONF) && defined (_PC_NAME_MAX)
|
||||
--- bash-4.4/mksyntax.c 2012-07-29 18:48:38.000000000 -0500
|
||||
+++ bash-4.4/mksyntax.c 2017-01-27 13:11:50.809402700 -0600
|
||||
diff --git a/mksyntax.c b/mksyntax.c
|
||||
index 0385686..ccdbc69 100644
|
||||
--- a/mksyntax.c
|
||||
+++ b/mksyntax.c
|
||||
@@ -29,13 +29,13 @@
|
||||
|
||||
#ifdef HAVE_UNISTD_H
|
||||
@ -483,9 +511,11 @@
|
||||
#ifndef errno
|
||||
extern int errno;
|
||||
#endif
|
||||
--- bash-4.4/parse.y 2016-09-11 10:31:46.000000000 -0500
|
||||
+++ bash-4.4/parse.y 2017-01-27 13:11:50.809402700 -0600
|
||||
@@ -1539,14 +1539,20 @@ yy_string_get ()
|
||||
diff --git a/parse.y b/parse.y
|
||||
index d887eec..0ae3458 100644
|
||||
--- a/parse.y
|
||||
+++ b/parse.y
|
||||
@@ -1620,14 +1620,20 @@ yy_string_get ()
|
||||
string = bash_input.location.string;
|
||||
|
||||
/* If the string doesn't exist, or is empty, EOF found. */
|
||||
@ -509,8 +539,10 @@
|
||||
}
|
||||
|
||||
static int
|
||||
--- bash-5.1/subst.c.orig 2020-11-16 16:33:15.000000000 +0100
|
||||
+++ bash-5.1/subst.c 2020-12-19 16:56:42.074812800 +0100
|
||||
diff --git a/subst.c b/subst.c
|
||||
index d9feabc..2001b4e 100644
|
||||
--- a/subst.c
|
||||
+++ b/subst.c
|
||||
@@ -43,6 +43,7 @@
|
||||
#include "posixstat.h"
|
||||
#include "bashintl.h"
|
||||
@ -518,8 +550,8 @@
|
||||
+#define NEED_SH_SETLINEBUF_DECL
|
||||
#include "shell.h"
|
||||
#include "parser.h"
|
||||
#include "flags.h"
|
||||
@@ -6216,6 +6217,13 @@
|
||||
#include "redir.h"
|
||||
@@ -6821,6 +6822,13 @@ read_comsub (fd, quoted, flags, rflag)
|
||||
#endif
|
||||
continue;
|
||||
}
|
||||
@ -533,7 +565,7 @@
|
||||
|
||||
/* Add the character to ISTRING, possibly after resizing it. */
|
||||
RESIZE_MALLOCED_BUFFER (istring, istring_index, mb_cur_max+1, istring_size, 512);
|
||||
@@ -6354,6 +6371,28 @@
|
||||
@@ -6982,6 +6990,28 @@ command_substitute (string, quoted, flags)
|
||||
goto error_exit;
|
||||
}
|
||||
|
||||
@ -561,9 +593,11 @@
|
||||
+
|
||||
#if defined (JOB_CONTROL)
|
||||
old_pipeline_pgrp = pipeline_pgrp;
|
||||
/* Don't reset the pipeline pgrp if we're already a subshell in a pipeline. */
|
||||
--- bash-4.4/support/bashversion.c 2008-09-09 08:31:53.000000000 -0500
|
||||
+++ bash-4.4/support/bashversion.c 2017-01-27 13:11:50.809402700 -0600
|
||||
/* Don't reset the pipeline pgrp if we're already a subshell in a pipeline or
|
||||
diff --git a/support/bashversion.c b/support/bashversion.c
|
||||
index ad02d46..2c9ac36 100644
|
||||
--- a/support/bashversion.c
|
||||
+++ b/support/bashversion.c
|
||||
@@ -26,6 +26,9 @@
|
||||
|
||||
#if defined (HAVE_UNISTD_H)
|
||||
@ -584,8 +618,10 @@
|
||||
extern char *dist_version;
|
||||
extern int patch_level;
|
||||
|
||||
--- bash-4.4/support/mkversion.sh 2008-08-13 07:25:57.000000000 -0500
|
||||
+++ bash-4.4/support/mkversion.sh 2017-01-27 13:11:50.809402700 -0600
|
||||
diff --git a/support/mkversion.sh b/support/mkversion.sh
|
||||
index 5960a42..d72c44c 100755
|
||||
--- a/support/mkversion.sh
|
||||
+++ b/support/mkversion.sh
|
||||
@@ -29,7 +29,7 @@ source_dir="."
|
||||
while [ $# -gt 0 ]; do
|
||||
case "$1" in
|
||||
@ -595,9 +631,11 @@
|
||||
-s) shift; rel_status=$1; shift ;;
|
||||
-p) shift; patch_level=$1; shift ;;
|
||||
-d) shift; dist_version=$1; shift ;;
|
||||
--- bash-4.4/variables.c 2016-06-15 15:05:52.000000000 -0500
|
||||
+++ bash-4.4/variables.c 2017-01-27 13:11:50.809402700 -0600
|
||||
@@ -5239,6 +5239,7 @@ sv_winsize (name)
|
||||
diff --git a/variables.c b/variables.c
|
||||
index 1a0c2c4..028667c 100644
|
||||
--- a/variables.c
|
||||
+++ b/variables.c
|
||||
@@ -6098,6 +6098,7 @@ sv_winsize (name)
|
||||
/* Update the value of HOME in the export environment so tilde expansion will
|
||||
work on cygwin. */
|
||||
#if defined (__CYGWIN__)
|
||||
|
||||
@ -1,6 +1,20 @@
|
||||
--- bash-5.1/configure.ac.orig 2020-12-04 15:04:55.000000000 +0100
|
||||
+++ bash-5.1/configure.ac 2020-12-19 16:30:53.432216400 +0100
|
||||
@@ -76,7 +76,7 @@
|
||||
diff --git a/MANIFEST b/MANIFEST
|
||||
index a45b3cf..7172f3d 100644
|
||||
--- a/MANIFEST
|
||||
+++ b/MANIFEST
|
||||
@@ -211,6 +211,7 @@ builtins/bashgetopt.c f
|
||||
builtins/common.h f
|
||||
builtins/bashgetopt.h f
|
||||
#cross-build/cygwin32.cache f
|
||||
+#cross-build/msys32.cache f
|
||||
cross-build/x86-beos.cache f
|
||||
cross-build/opennt.cache f
|
||||
cross-build/qnx.cache f
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index 50a6e20..f770177 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -76,7 +76,7 @@ m68k-sysv) opt_bash_malloc=no ;; # fixes file descriptor leak in closedir
|
||||
# These need additional investigation
|
||||
sparc-linux*) opt_bash_malloc=no ;; # sparc running linux; requires ELF
|
||||
*-aix*) opt_bash_malloc=no ;; # AIX machines
|
||||
@ -9,7 +23,7 @@
|
||||
# These lack a working sbrk(2)
|
||||
aarch64-freebsd*) opt_bash_malloc=no ;;
|
||||
riscv*-freebsd*) opt_bash_malloc=no ;;
|
||||
@@ -446,6 +446,9 @@
|
||||
@@ -462,6 +462,9 @@ if test "x$cross_compiling" = "xyes"; then
|
||||
*-cygwin*)
|
||||
cross_cache=${srcdir}/cross-build/cygwin32.cache
|
||||
;;
|
||||
@ -19,7 +33,7 @@
|
||||
*-mingw*)
|
||||
cross_cache=${srcdir}/cross-build/cygwin32.cache
|
||||
;;
|
||||
@@ -580,7 +583,7 @@
|
||||
@@ -602,7 +605,7 @@ if test $opt_readline = yes; then
|
||||
# section for OS versions that don't allow unresolved symbols
|
||||
# to be compiled into dynamic libraries.
|
||||
case "$host_os" in
|
||||
@ -28,7 +42,7 @@
|
||||
esac
|
||||
else
|
||||
RL_LIBDIR='$(dot)/$(LIBSUBDIR)/readline'
|
||||
@@ -1168,7 +1171,7 @@
|
||||
@@ -1180,7 +1183,7 @@ freebsd*|midnightbsd*) LOCAL_CFLAGS='-DHEREDOC_PIPESIZE=4096' ;;
|
||||
*qnx[[67]]*) LOCAL_LIBS="-lncurses" ;;
|
||||
*qnx*) LOCAL_CFLAGS="-Dqnx -F -3s" LOCAL_LDFLAGS="-3s" LOCAL_LIBS="-lunix -lncurses" ;;
|
||||
powerux*) LOCAL_LIBS="-lgen" ;;
|
||||
@ -37,9 +51,11 @@
|
||||
opennt*|interix*) LOCAL_CFLAGS="-DNO_MAIN_ENV_ARG -DBROKEN_DIRENT_D_INO -D_POSIX_SOURCE -D_ALL_SOURCE -DRECYCLES_PIDS" ;;
|
||||
*openstep*) LOCAL_CFLAGS="-D__APPLE_CC__" ;;
|
||||
esac
|
||||
diff -Naur a/cross-build/msys32.cache b/cross-build/msys32.cache
|
||||
--- a/cross-build/msys32.cache 1970-01-01 03:00:00.000000000 +0300
|
||||
+++ b/cross-build/msys32.cache 2014-03-13 16:36:06.389000000 +0400
|
||||
diff --git a/cross-build/msys32.cache b/cross-build/msys32.cache
|
||||
new file mode 100644
|
||||
index 0000000..7d9f257
|
||||
--- /dev/null
|
||||
+++ b/cross-build/msys32.cache
|
||||
@@ -0,0 +1,251 @@
|
||||
+# This file is a shell script that caches the results of configure
|
||||
+# tests run on this system so they can be shared between configure
|
||||
@ -292,10 +308,11 @@ diff -Naur a/cross-build/msys32.cache b/cross-build/msys32.cache
|
||||
+bash_cv_under_sys_siglist=${bash_cv_under_sys_siglist='no'}
|
||||
+bash_cv_unusable_rtsigs=${bash_cv_unusable_rtsigs='no'}
|
||||
+bash_cv_void_sighandler=${bash_cv_void_sighandler='yes'}
|
||||
diff -Naur a/examples/complete/bash_completion b/examples/complete/bash_completion
|
||||
--- a/examples/complete/bash_completion 2008-08-23 05:20:17.000000000 +0400
|
||||
+++ b/examples/complete/bash_completion 2014-03-13 16:36:06.404600000 +0400
|
||||
@@ -48,6 +48,7 @@
|
||||
diff --git a/examples/complete/bash_completion b/examples/complete/bash_completion
|
||||
index b0cf4a8..1362eaa 100644
|
||||
--- a/examples/complete/bash_completion
|
||||
+++ b/examples/complete/bash_completion
|
||||
@@ -48,6 +48,7 @@ readonly BASH_COMPLETION BASH_COMPLETION_DIR
|
||||
UNAME=$( uname -s )
|
||||
# strip OS type and version under Cygwin (e.g. CYGWIN_NT-5.1 => Cygwin)
|
||||
UNAME=${UNAME/CYGWIN_*/Cygwin}
|
||||
@ -303,7 +320,7 @@ diff -Naur a/examples/complete/bash_completion b/examples/complete/bash_completi
|
||||
RELEASE=$( uname -r )
|
||||
|
||||
# features supported by bash 2.05 and higher
|
||||
@@ -817,7 +818,7 @@
|
||||
@@ -817,7 +818,7 @@ complete -F _insmod $filenames insmod modprobe modinfo
|
||||
#
|
||||
[ $UNAME = GNU -o $UNAME = Linux -o $UNAME = Darwin \
|
||||
-o $UNAME = FreeBSD -o $UNAME = SunOS -o $UNAME = Cygwin \
|
||||
@ -312,7 +329,7 @@ diff -Naur a/examples/complete/bash_completion b/examples/complete/bash_completi
|
||||
_man()
|
||||
{
|
||||
local cur prev sect manpath UNAME
|
||||
@@ -837,8 +838,9 @@
|
||||
@@ -837,8 +838,9 @@ _man()
|
||||
UNAME=$( uname -s )
|
||||
# strip OS type and version under Cygwin
|
||||
UNAME=${UNAME/CYGWIN_*/Cygwin}
|
||||
@ -323,7 +340,7 @@ diff -Naur a/examples/complete/bash_completion b/examples/complete/bash_completi
|
||||
manpath=$( manpath 2>/dev/null || command man --path )
|
||||
else
|
||||
manpath=$MANPATH
|
||||
@@ -873,7 +875,7 @@
|
||||
@@ -873,7 +875,7 @@ _man()
|
||||
}
|
||||
[ $UNAME = GNU -o $UNAME = Linux -o $UNAME = Darwin \
|
||||
-o $UNAME = FreeBSD -o $UNAME = SunOS -o $UNAME = Cygwin \
|
||||
@ -332,7 +349,7 @@ diff -Naur a/examples/complete/bash_completion b/examples/complete/bash_completi
|
||||
complete -F _man $filenames man apropos whatis
|
||||
|
||||
# renice(8) completion
|
||||
@@ -4264,7 +4266,7 @@
|
||||
@@ -4264,7 +4266,7 @@ _gcc()
|
||||
fi
|
||||
} &&
|
||||
complete $filenames -F _gcc gcc g++ c++ g77 gcj gpc
|
||||
@ -341,42 +358,11 @@ diff -Naur a/examples/complete/bash_completion b/examples/complete/bash_completi
|
||||
[ -n "${have:-}" ] && complete $filenames -F _gcc cc
|
||||
|
||||
# Linux cardctl(8) completion
|
||||
diff -Naur a/MANIFEST b/MANIFEST
|
||||
--- a/MANIFEST 2014-02-25 18:31:30.000000000 +0400
|
||||
+++ b/MANIFEST 2014-03-13 16:36:06.404600000 +0400
|
||||
@@ -207,6 +207,7 @@
|
||||
builtins/common.h f
|
||||
builtins/bashgetopt.h f
|
||||
cross-build/cygwin32.cache f
|
||||
+cross-build/msys32.cache f
|
||||
cross-build/x86-beos.cache f
|
||||
cross-build/opennt.cache f
|
||||
include/ansi_stdlib.h f
|
||||
--- bash-5.1/support/config.guess.orig 2020-11-18 20:38:39.000000000 +0100
|
||||
+++ bash-5.1/support/config.guess 2020-12-19 16:27:26.381313600 +0100
|
||||
@@ -876,6 +876,9 @@
|
||||
*:MINGW64*:*)
|
||||
echo "$UNAME_MACHINE"-pc-mingw64
|
||||
exit ;;
|
||||
+ i*:MSYS*:*)
|
||||
+ echo ${UNAME_MACHINE}-pc-msys
|
||||
+ exit ;;
|
||||
*:MINGW*:*)
|
||||
echo "$UNAME_MACHINE"-pc-mingw32
|
||||
exit ;;
|
||||
@@ -903,6 +906,9 @@
|
||||
amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*)
|
||||
echo x86_64-pc-cygwin
|
||||
exit ;;
|
||||
+ amd64:MSYS*:*:* | x86_64:MSYS*:*:*)
|
||||
+ echo x86_64-pc-msys
|
||||
+ exit ;;
|
||||
prep*:SunOS:5.*:*)
|
||||
echo powerpcle-unknown-solaris2"$(echo "$UNAME_RELEASE"|sed -e 's/[^.]*//')"
|
||||
exit ;;
|
||||
--- bash-5.1/support/config.rpath.orig 2020-12-19 16:21:12.539354600 +0100
|
||||
+++ bash-5.1/support/config.rpath 2020-12-19 16:22:59.203761400 +0100
|
||||
@@ -57,7 +57,7 @@
|
||||
diff --git a/support/config.rpath b/support/config.rpath
|
||||
index fc5913d..54df920 100755
|
||||
--- a/support/config.rpath
|
||||
+++ b/support/config.rpath
|
||||
@@ -57,7 +57,7 @@ else
|
||||
aix*)
|
||||
wl='-Wl,'
|
||||
;;
|
||||
@ -385,7 +371,7 @@ diff -Naur a/MANIFEST b/MANIFEST
|
||||
;;
|
||||
hpux9* | hpux10* | hpux11*)
|
||||
wl='-Wl,'
|
||||
@@ -149,7 +149,7 @@
|
||||
@@ -149,7 +149,7 @@ hardcode_direct=no
|
||||
hardcode_minus_L=no
|
||||
|
||||
case "$host_os" in
|
||||
@ -394,7 +380,7 @@ diff -Naur a/MANIFEST b/MANIFEST
|
||||
# FIXME: the MSVC++ port hasn't been tested in a loooong time
|
||||
# When not using gcc, we currently assume that we are using
|
||||
# Microsoft Visual C++.
|
||||
@@ -198,7 +198,7 @@
|
||||
@@ -198,7 +198,7 @@ if test "$with_gnu_ld" = yes; then
|
||||
ld_shlibs=no
|
||||
fi
|
||||
;;
|
||||
@ -403,7 +389,7 @@ diff -Naur a/MANIFEST b/MANIFEST
|
||||
# hardcode_libdir_flag_spec is actually meaningless, as there is
|
||||
# no search path for DLLs.
|
||||
hardcode_libdir_flag_spec='-L$libdir'
|
||||
@@ -348,7 +348,7 @@
|
||||
@@ -348,7 +348,7 @@ else
|
||||
;;
|
||||
bsdi[45]*)
|
||||
;;
|
||||
@ -412,7 +398,7 @@ diff -Naur a/MANIFEST b/MANIFEST
|
||||
# When not using gcc, we currently assume that we are using
|
||||
# Microsoft Visual C++.
|
||||
# hardcode_libdir_flag_spec is actually meaningless, as there is
|
||||
@@ -533,7 +533,7 @@
|
||||
@@ -533,7 +533,7 @@ case "$host_os" in
|
||||
bsdi[45]*)
|
||||
library_names_spec='$libname$shrext'
|
||||
;;
|
||||
@ -421,21 +407,14 @@ diff -Naur a/MANIFEST b/MANIFEST
|
||||
shrext=.dll
|
||||
library_names_spec='$libname.dll.a $libname.lib'
|
||||
;;
|
||||
diff -Naur a/support/shobj-conf b/support/shobj-conf
|
||||
--- a/support/shobj-conf 2014-02-24 06:06:29.000000000 +0400
|
||||
+++ b/support/shobj-conf 2014-03-13 16:36:06.451400000 +0400
|
||||
@@ -534,6 +534,23 @@
|
||||
SHLIB_DLLVERSION="$DLLVERSION"
|
||||
fi
|
||||
;;
|
||||
+msys*)
|
||||
+ SHOBJ_LD='$(CC)'
|
||||
+ SHOBJ_LDFLAGS='-shared -Wl,--enable-auto-import -Wl,--enable-auto-image-base -Wl,--export-all -Wl,--out-implib=$(@).a'
|
||||
+ SHLIB_LIBPREF='msys-'
|
||||
+ SHLIB_LIBSUFF='dll'
|
||||
+ SHLIB_LIBVERSION='$(SHLIB_DLLVERSION).$(SHLIB_LIBSUFF)'
|
||||
+ SHLIB_LIBS='$(TERMCAP_LIB)'
|
||||
+
|
||||
diff --git a/support/shobj-conf b/support/shobj-conf
|
||||
index cd7634d..6bd693c 100755
|
||||
--- a/support/shobj-conf
|
||||
+++ b/support/shobj-conf
|
||||
@@ -484,6 +484,23 @@ cygwin*)
|
||||
SHLIB_LIBVERSION='$(SHLIB_DLLVERSION).$(SHLIB_LIBSUFF)'
|
||||
SHLIB_LIBS='$(TERMCAP_LIB)'
|
||||
|
||||
+ SHLIB_DOT=
|
||||
+ # For official cygwin releases, DLLVERSION will be defined in the
|
||||
+ # environment of configure, and will be incremented any time the API
|
||||
@ -445,6 +424,14 @@ diff -Naur a/support/shobj-conf b/support/shobj-conf
|
||||
+ SHLIB_DLLVERSION="$DLLVERSION"
|
||||
+ fi
|
||||
+ ;;
|
||||
|
||||
mingw*)
|
||||
SHOBJ_LD='$(CC)'
|
||||
+msys*)
|
||||
+ SHOBJ_LD='$(CC)'
|
||||
+ SHOBJ_LDFLAGS='-shared -Wl,--enable-auto-import -Wl,--enable-auto-image-base -Wl,--export-all -Wl,--out-implib=$(@).a'
|
||||
+ SHLIB_LIBPREF='msys-'
|
||||
+ SHLIB_LIBSUFF='dll'
|
||||
+ SHLIB_LIBVERSION='$(SHLIB_DLLVERSION).$(SHLIB_LIBSUFF)'
|
||||
+ SHLIB_LIBS='$(TERMCAP_LIB)'
|
||||
+
|
||||
SHLIB_DOT=
|
||||
# For official cygwin releases, DLLVERSION will be defined in the
|
||||
# environment of configure, and will be incremented any time the API
|
||||
|
||||
@ -1,7 +1,8 @@
|
||||
diff -Naur a/bashline.c b/bashline.c
|
||||
--- a/bashline.c 2014-03-13 16:36:07.995800000 +0400
|
||||
+++ b/bashline.c 2014-03-13 16:36:08.994200000 +0400
|
||||
@@ -758,7 +758,11 @@
|
||||
diff --git a/bashline.c b/bashline.c
|
||||
index 8f69bc6..6d285c5 100644
|
||||
--- a/bashline.c
|
||||
+++ b/bashline.c
|
||||
@@ -822,7 +822,11 @@ snarf_hosts_from_file (filename)
|
||||
char *temp, buffer[256], name[256];
|
||||
register int i, start;
|
||||
|
||||
@ -14,10 +15,11 @@ diff -Naur a/bashline.c b/bashline.c
|
||||
if (file == 0)
|
||||
return;
|
||||
|
||||
diff -Naur a/builtins/fc.def b/builtins/fc.def
|
||||
--- a/builtins/fc.def 2013-08-14 00:25:38.000000000 +0400
|
||||
+++ b/builtins/fc.def 2014-03-13 16:36:08.994200000 +0400
|
||||
@@ -594,6 +594,10 @@
|
||||
diff --git a/builtins/fc.def b/builtins/fc.def
|
||||
index 9b8a997..5be93bd 100644
|
||||
--- a/builtins/fc.def
|
||||
+++ b/builtins/fc.def
|
||||
@@ -681,6 +681,10 @@ fc_readline (stream)
|
||||
FILE *stream;
|
||||
{
|
||||
register int c;
|
||||
@ -28,7 +30,7 @@ diff -Naur a/builtins/fc.def b/builtins/fc.def
|
||||
int line_len = 0, lindex = 0;
|
||||
char *line = (char *)NULL;
|
||||
|
||||
@@ -604,12 +608,19 @@
|
||||
@@ -691,12 +695,19 @@ fc_readline (stream)
|
||||
|
||||
if (c == '\n')
|
||||
{
|
||||
@ -48,10 +50,11 @@ diff -Naur a/builtins/fc.def b/builtins/fc.def
|
||||
}
|
||||
|
||||
if (!lindex)
|
||||
diff -Naur a/general.c b/general.c
|
||||
--- a/general.c 2014-03-13 16:36:08.869400000 +0400
|
||||
+++ b/general.c 2014-03-13 16:36:09.009800000 +0400
|
||||
@@ -612,7 +612,8 @@
|
||||
diff --git a/general.c b/general.c
|
||||
index f4c2a2f..0ae74ca 100644
|
||||
--- a/general.c
|
||||
+++ b/general.c
|
||||
@@ -818,7 +818,8 @@ int
|
||||
absolute_program (string)
|
||||
const char *string;
|
||||
{
|
||||
@ -61,10 +64,11 @@ diff -Naur a/general.c b/general.c
|
||||
}
|
||||
|
||||
/* **************************************************************** */
|
||||
diff -Naur a/lib/readline/display.c b/lib/readline/display.c
|
||||
--- a/lib/readline/display.c 2013-12-27 22:10:56.000000000 +0400
|
||||
+++ b/lib/readline/display.c 2014-03-13 16:36:09.009800000 +0400
|
||||
@@ -381,7 +381,10 @@
|
||||
diff --git a/lib/readline/display.c b/lib/readline/display.c
|
||||
index c1135ec..b388af6 100644
|
||||
--- a/lib/readline/display.c
|
||||
+++ b/lib/readline/display.c
|
||||
@@ -529,7 +529,10 @@ expand_prompt (char *pmt, int flags, int *lp, int *lip, int *niflp, int *vlp)
|
||||
if (lp)
|
||||
*lp = rl;
|
||||
if (lip)
|
||||
@ -76,10 +80,11 @@ diff -Naur a/lib/readline/display.c b/lib/readline/display.c
|
||||
if (niflp)
|
||||
*niflp = invfl;
|
||||
if (vlp)
|
||||
diff -Naur a/parse.y b/parse.y
|
||||
--- a/parse.y 2014-03-13 16:36:06.264200000 +0400
|
||||
+++ b/parse.y 2014-03-13 16:36:09.009800000 +0400
|
||||
@@ -1374,7 +1374,13 @@
|
||||
diff --git a/parse.y b/parse.y
|
||||
index 0ae3458..c6e9520 100644
|
||||
--- a/parse.y
|
||||
+++ b/parse.y
|
||||
@@ -1459,7 +1459,13 @@ yy_input_name ()
|
||||
static int
|
||||
yy_getc ()
|
||||
{
|
||||
@ -94,10 +99,11 @@ diff -Naur a/parse.y b/parse.y
|
||||
}
|
||||
|
||||
/* Call this to unget C. That is, to make C the next character
|
||||
diff -Naur a/shell.c b/shell.c
|
||||
--- a/shell.c 2014-03-13 16:36:06.264200000 +0400
|
||||
+++ b/shell.c 2014-03-13 16:36:09.009800000 +0400
|
||||
@@ -1507,7 +1507,11 @@
|
||||
diff --git a/shell.c b/shell.c
|
||||
index ee9d445..8f25726 100644
|
||||
--- a/shell.c
|
||||
+++ b/shell.c
|
||||
@@ -1696,7 +1696,11 @@ open_shell_script (script_name)
|
||||
default_buffered_input = fd;
|
||||
SET_CLOSE_ON_EXEC (default_buffered_input);
|
||||
#else /* !BUFFERED_INPUT */
|
||||
@ -110,10 +116,11 @@ diff -Naur a/shell.c b/shell.c
|
||||
|
||||
if (default_input == 0)
|
||||
{
|
||||
diff -Naur a/stringlib.c b/stringlib.c
|
||||
--- a/stringlib.c 2012-03-19 22:38:06.000000000 +0400
|
||||
+++ b/stringlib.c 2014-03-13 16:36:09.025400000 +0400
|
||||
@@ -270,7 +270,15 @@
|
||||
diff --git a/stringlib.c b/stringlib.c
|
||||
index 7330496..8623fa6 100644
|
||||
--- a/stringlib.c
|
||||
+++ b/stringlib.c
|
||||
@@ -278,7 +278,15 @@ strip_trailing (string, len, newlines_only)
|
||||
{
|
||||
if ((newlines_only && string[len] == '\n') ||
|
||||
(!newlines_only && whitespace (string[len])))
|
||||
@ -129,10 +136,11 @@ diff -Naur a/stringlib.c b/stringlib.c
|
||||
else
|
||||
break;
|
||||
}
|
||||
diff -Naur a/subst.c b/subst.c
|
||||
--- a/subst.c 2014-03-13 16:36:06.279800000 +0400
|
||||
+++ b/subst.c 2014-03-13 16:36:09.025400000 +0400
|
||||
@@ -5322,6 +5322,15 @@
|
||||
diff --git a/subst.c b/subst.c
|
||||
index 2001b4e..3ba2029 100644
|
||||
--- a/subst.c
|
||||
+++ b/subst.c
|
||||
@@ -6895,6 +6895,15 @@ read_comsub (fd, quoted, flags, rflag)
|
||||
/* If the newline was quoted, remove the quoting char. */
|
||||
if (istring[istring_index - 1] == CTLESC)
|
||||
--istring_index;
|
||||
@ -148,10 +156,11 @@ diff -Naur a/subst.c b/subst.c
|
||||
}
|
||||
else
|
||||
break;
|
||||
diff -Naur a/variables.c b/variables.c
|
||||
--- a/variables.c 2014-03-13 16:36:06.279800000 +0400
|
||||
+++ b/variables.c 2014-03-13 16:36:09.041000000 +0400
|
||||
@@ -2175,6 +2175,20 @@
|
||||
diff --git a/variables.c b/variables.c
|
||||
index 028667c..a10594d 100644
|
||||
--- a/variables.c
|
||||
+++ b/variables.c
|
||||
@@ -2593,6 +2593,20 @@ set_if_not (name, value)
|
||||
{
|
||||
SHELL_VAR *v;
|
||||
|
||||
@ -172,10 +181,11 @@ diff -Naur a/variables.c b/variables.c
|
||||
if (shell_variables == 0)
|
||||
create_variable_tables ();
|
||||
|
||||
diff -Naur a/y.tab.c b/y.tab.c
|
||||
--- a/y.tab.c 2014-02-11 19:57:47.000000000 +0400
|
||||
+++ b/y.tab.c 2014-03-13 16:36:09.072200000 +0400
|
||||
@@ -3686,7 +3686,13 @@
|
||||
diff --git a/y.tab.c b/y.tab.c
|
||||
index 32b4c7c..ac70820 100644
|
||||
--- a/y.tab.c
|
||||
+++ b/y.tab.c
|
||||
@@ -3770,7 +3770,13 @@ yy_input_name ()
|
||||
static int
|
||||
yy_getc ()
|
||||
{
|
||||
@ -190,7 +200,7 @@ diff -Naur a/y.tab.c b/y.tab.c
|
||||
}
|
||||
|
||||
/* Call this to unget C. That is, to make C the next character
|
||||
@@ -4625,6 +4631,10 @@
|
||||
@@ -4746,6 +4752,10 @@ shell_getc (remove_quoted_newline)
|
||||
else
|
||||
RESIZE_MALLOCED_BUFFER (shell_input_line, i, 2, shell_input_line_size, 256);
|
||||
|
||||
|
||||
@ -1,7 +1,8 @@
|
||||
diff -Naur a/builtins/cd.def b/builtins/cd.def
|
||||
--- a/builtins/cd.def 2013-11-07 03:04:24.000000000 +0400
|
||||
+++ b/builtins/cd.def 2014-03-13 16:36:10.757000000 +0400
|
||||
@@ -28,6 +28,8 @@
|
||||
diff --git a/builtins/cd.def b/builtins/cd.def
|
||||
index b87c5d9..5e4e78e 100644
|
||||
--- a/builtins/cd.def
|
||||
+++ b/builtins/cd.def
|
||||
@@ -28,6 +28,8 @@ $PRODUCES cd.c
|
||||
# include <unistd.h>
|
||||
#endif
|
||||
|
||||
@ -10,7 +11,7 @@ diff -Naur a/builtins/cd.def b/builtins/cd.def
|
||||
#include "../bashtypes.h"
|
||||
#include "posixdir.h"
|
||||
#include "posixstat.h"
|
||||
@@ -442,13 +444,14 @@
|
||||
@@ -461,13 +463,14 @@ cd_builtin (list)
|
||||
|
||||
$BUILTIN pwd
|
||||
$FUNCTION pwd_builtin
|
||||
@ -26,7 +27,7 @@ diff -Naur a/builtins/cd.def b/builtins/cd.def
|
||||
|
||||
By default, `pwd' behaves as if `-L' were specified.
|
||||
|
||||
@@ -466,13 +469,13 @@
|
||||
@@ -485,13 +488,13 @@ int
|
||||
pwd_builtin (list)
|
||||
WORD_LIST *list;
|
||||
{
|
||||
@ -42,7 +43,7 @@ diff -Naur a/builtins/cd.def b/builtins/cd.def
|
||||
{
|
||||
switch (opt)
|
||||
{
|
||||
@@ -482,6 +485,9 @@
|
||||
@@ -501,6 +504,9 @@ pwd_builtin (list)
|
||||
case 'L':
|
||||
verbatim_pwd = 0;
|
||||
break;
|
||||
@ -52,7 +53,7 @@ diff -Naur a/builtins/cd.def b/builtins/cd.def
|
||||
CASE_HELPOPT;
|
||||
default:
|
||||
builtin_usage ();
|
||||
@@ -489,6 +495,19 @@
|
||||
@@ -509,6 +515,19 @@ pwd_builtin (list)
|
||||
}
|
||||
list = loptend;
|
||||
|
||||
@ -72,7 +73,7 @@ diff -Naur a/builtins/cd.def b/builtins/cd.def
|
||||
#define tcwd the_current_working_directory
|
||||
|
||||
directory = tcwd ? (verbatim_pwd ? sh_physpath (tcwd, 0) : tcwd)
|
||||
@@ -505,6 +524,7 @@
|
||||
@@ -525,6 +544,7 @@ pwd_builtin (list)
|
||||
}
|
||||
|
||||
#undef tcwd
|
||||
|
||||
@ -1,6 +1,8 @@
|
||||
--- bash-4.3/bashline.c.orig 2014-10-25 21:20:39.964800000 +0400
|
||||
+++ bash-4.3/bashline.c 2014-10-25 21:25:19.579200000 +0400
|
||||
@@ -501,12 +501,20 @@
|
||||
diff --git a/bashline.c b/bashline.c
|
||||
index 6d285c5..1738d2c 100644
|
||||
--- a/bashline.c
|
||||
+++ b/bashline.c
|
||||
@@ -551,12 +551,20 @@ initialize_readline ()
|
||||
kseq[0] = CTRL('J');
|
||||
kseq[1] = '\0';
|
||||
func = rl_function_of_keyseq (kseq, emacs_meta_keymap, (int *)NULL);
|
||||
@ -20,8 +22,8 @@
|
||||
+#endif
|
||||
rl_unbind_key_in_map (CTRL('M'), emacs_meta_keymap);
|
||||
#if defined (VI_MODE)
|
||||
rl_unbind_key_in_map (CTRL('E'), vi_movement_keymap);
|
||||
@@ -525,8 +533,12 @@
|
||||
kseq[0] = CTRL('E');
|
||||
@@ -578,8 +586,12 @@ initialize_readline ()
|
||||
kseq[0] = '~';
|
||||
kseq[1] = '\0';
|
||||
func = rl_function_of_keyseq (kseq, emacs_meta_keymap, (int *)NULL);
|
||||
@ -34,7 +36,7 @@
|
||||
rl_bind_keyseq_in_map (kseq, bash_complete_username, emacs_meta_keymap);
|
||||
|
||||
rl_bind_key_if_unbound_in_map ('~', bash_possible_username_completions, emacs_ctlx_keymap);
|
||||
@@ -549,8 +561,12 @@
|
||||
@@ -602,8 +614,12 @@ initialize_readline ()
|
||||
kseq[0] = TAB;
|
||||
kseq[1] = '\0';
|
||||
func = rl_function_of_keyseq (kseq, emacs_meta_keymap, (int *)NULL);
|
||||
@ -47,13 +49,15 @@
|
||||
rl_bind_key_in_map (TAB, dynamic_complete_history, emacs_meta_keymap);
|
||||
|
||||
/* Tell the completer that we want a crack first. */
|
||||
--- bash-4.3/configure.ac.orig 2014-10-25 14:51:50.370000000 +0400
|
||||
+++ bash-4.3/configure.ac 2014-10-25 14:51:54.504000000 +0400
|
||||
@@ -495,6 +495,7 @@
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index f770177..a934a5d 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -515,6 +515,7 @@ if test "$opt_static_link" = yes; then
|
||||
# if we're using gcc, add `-static' to LDFLAGS, except on Solaris >= 2
|
||||
if test -n "$GCC" || test "$ac_cv_prog_gcc" = "yes"; then
|
||||
if test "$GCC" = "yes"; then
|
||||
STATIC_LD="-static"
|
||||
+ CFLAGS="$CFLAGS -D_STATIC_BUILD"
|
||||
case "$host_os" in
|
||||
solaris2*) ;;
|
||||
solaris2*|linux*) ;;
|
||||
*) LDFLAGS="$LDFLAGS -static" ;; # XXX experimental
|
||||
|
||||
@ -3,10 +3,10 @@
|
||||
|
||||
pkgbase=bash
|
||||
pkgname=('bash' 'bash-devel')
|
||||
_basever=5.1
|
||||
_patchlevel=016 #prepare for some patches
|
||||
_basever=5.2
|
||||
_patchlevel=002 #prepare for some patches
|
||||
pkgver=${_basever}.${_patchlevel}
|
||||
pkgrel=2
|
||||
pkgrel=1
|
||||
pkgdesc="The GNU Bourne Again shell"
|
||||
arch=('i686' 'x86_64')
|
||||
license=('GPL')
|
||||
@ -122,42 +122,14 @@ package_bash-devel() {
|
||||
done
|
||||
}
|
||||
|
||||
sha256sums=('cc012bc860406dcf42f64431bcd3d2fa7560c02915a601aba9cd597a39329baa'
|
||||
sha256sums=('a139c166df7ff4471c5e0733051642ee5556c1cc8a4a78f145583c5c81ab32fb'
|
||||
'SKIP'
|
||||
'af29ed2eb7bce53ec09ea691c0054d8e3b4ac726a797a919951a5cba93e772ef'
|
||||
'e1c76669ee5002b1ec06401224b94ece9a27fc722a6eb85ffaba272aad598001'
|
||||
'c866eeb043090c13ab2ce6777ca6a24b31929fb58c4a6a221bca541fcc5d9949'
|
||||
'9ef0a4686385a36c7a094ea8f5e9e973ee427c868952b2778f2f659347f74b32'
|
||||
'82578a38798bfcfd85707c08e4f7b22c3fa7acc7a01d083faf86eb923511d60e'
|
||||
'ebb07b3dbadd98598f078125d0ae0d699295978a5cdaef6282fe19adef45b5fa'
|
||||
'948b8b5401dcb4e5eb577cfa6543e740e2e3bd0690939d8e77d078d75d110097'
|
||||
'6ca7633a87db7caf1d2d1a96779681c365d0ad2c11b2ea758e772f4ebff2a62f'
|
||||
'c55c24110fbe90a2000411239e6399c1baed2843a61220b4e8a7a036f4a7436a'
|
||||
'500c75c64593a70276585345a55c807226c0cc220d08b7cccece2ab005b3bcea'
|
||||
'cbae1aa81d56eba4e916bdaf2b2983731d6e2537dd8d606a3b378e49bcb81e79'
|
||||
'f42f2fee923bc2209f406a1892772121c467f44533bedfe00a176139da5d310a'
|
||||
'SKIP'
|
||||
'15ea6121a801e48e658ceee712ea9b88d4ded022046a6147550790caf04f5dbe'
|
||||
'SKIP'
|
||||
'22f2cc262f056b22966281babf4b0a2f84cb7dd2223422e5dcd013c3dcbab6b1'
|
||||
'SKIP'
|
||||
'9aaeb65664ef0d28c0067e47ba5652b518298b3b92d33327d84b98b28d873c86'
|
||||
'SKIP'
|
||||
'cccbb5e9e6763915d232d29c713007a62b06e65126e3dd2d1128a0dc5ef46da5'
|
||||
'SKIP'
|
||||
'75e17d937de862615c6375def40a7574462210dce88cf741f660e2cc29473d14'
|
||||
'SKIP'
|
||||
'acfcb8c7e9f73457c0fb12324afb613785e0c9cef3315c9bbab4be702f40393a'
|
||||
'SKIP'
|
||||
'f22cf3c51a28f084a25aef28950e8777489072628f972b12643b4534a17ed2d1'
|
||||
'SKIP'
|
||||
'e45cda953ab4b4b4bde6dc34d0d8ca40d1cc502046eb28070c9ebcd47e33c3ee'
|
||||
'SKIP'
|
||||
'a2c8d7b2704eeceff7b1503b7ad9500ea1cb6e9393faebdb3acd2afdd7aeae2a'
|
||||
'SKIP'
|
||||
'58191f164934200746f48459a05bca34d1aec1180b08ca2deeee3bb29622027b'
|
||||
'SKIP'
|
||||
'10f189c8367c4a15c7392e7bf70d0ff6953f78c9b312ed7622303a779273ab98'
|
||||
'SKIP'
|
||||
'c7acb66df435d284304c16ca83a5265f9edd9368612095b01a733d45c77ed5ad'
|
||||
'SKIP'
|
||||
'6a4ee0c81b437b96279a792c1efcec4ba56f009195a318083db6b53b096f83d0'
|
||||
'SKIP'
|
||||
'1b37692ef1f6cc3dcec246773443276066e6b1379868f8c14e01f4dfd4df80f0'
|
||||
'SKIP'
|
||||
'8899144f76a5db1fb41a89ed881c9f19add95728dd71db324f772ef225c5384f'
|
||||
'45cc5e1b876550eee96f95bffb36c41b6cb7c07d33f671db5634405cd00fd7b8'
|
||||
'SKIP')
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user