Hello community, here is the log from the commit of package bash for openSUSE:Factory checked in at 2019-03-13 09:47:41 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/bash (Old) and /work/SRC/openSUSE:Factory/.bash.new.28833 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "bash" Wed Mar 13 09:47:41 2019 rev:152 rq: version:5.0 Changes: -------- --- /work/SRC/openSUSE:Factory/bash/bash.changes 2019-03-13 09:04:45.791451561 +0100 +++ /work/SRC/openSUSE:Factory/.bash.new.28833/bash.changes 2019-03-13 09:47:45.854977153 +0100 @@ -2,37 +1,0 @@ -Mon Mar 11 07:20:37 UTC 2019 - Dr. Werner Fink <[email protected]> - -- Update temporary patch from upstream to make sed testsuite - work again - -------------------------------------------------------------------- -Wed Mar 6 11:06:10 UTC 2019 - Dr. Werner Fink <[email protected]> - -- Requires(postun) -> Requires(preun) - -------------------------------------------------------------------- -Tue Mar 5 12:04:07 UTC 2019 - Dr. Werner Fink <[email protected]> - -- Do not link /bin/sh as slave alternative to /usr/bin/sh - -------------------------------------------------------------------- -Mon Mar 4 14:30:38 UTC 2019 - Dr. Werner Fink <[email protected]> - -- Add temporary patch from upstream to fix boo#1127700 - -------------------------------------------------------------------- -Mon Mar 4 10:14:12 UTC 2019 - Dr. Werner Fink <[email protected]> - -- Refine and harden update-alternatives work flow -- Move header and Makefile from bash-loadables to bash-devel - -------------------------------------------------------------------- -Fri Mar 1 14:01:16 UTC 2019 - Dr. Werner Fink <[email protected]> - -- Make update-alternatives work flawless - -------------------------------------------------------------------- -Fri Feb 8 10:30:17 UTC 2019 - Jan Engelhardt <[email protected]> - -- Put "sh" under control of update-alternatives - -------------------------------------------------------------------- ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ bash.spec ++++++ --- /var/tmp/diff_new_pack.zv8It0/_old 2019-03-13 09:47:47.266976844 +0100 +++ /var/tmp/diff_new_pack.zv8It0/_new 2019-03-13 09:47:47.270976844 +0100 @@ -20,6 +20,18 @@ %bcond_with sjis Name: bash +BuildRequires: audit-devel +BuildRequires: autoconf +BuildRequires: bison +BuildRequires: fdupes +BuildRequires: makeinfo +BuildRequires: ncurses-devel +BuildRequires: patchutils +BuildRequires: pkg-config +# This has to be always the same version as included in the bash its self +BuildRequires: readline-devel == 8.0 +BuildRequires: screen +BuildRequires: sed %define bextend %nil Version: 5.0 Release: 0 @@ -72,21 +84,6 @@ Patch48: bash-4.3-extra-import-func.patch # PATCH-EXTEND-SUSE Allow root to clean file system if filled up Patch49: bash-4.3-pathtemp.patch -BuildRequires: audit-devel -BuildRequires: autoconf -BuildRequires: bison -BuildRequires: fdupes -BuildRequires: makeinfo -BuildRequires: ncurses-devel -BuildRequires: patchutils -BuildRequires: pkg-config -# This has to be always the same version as included in the bash its self -BuildRequires: readline-devel == 8.0 -BuildRequires: screen -BuildRequires: sed -BuildRequires: update-alternatives -Requires(post): update-alternatives -Requires(preun): update-alternatives %global _sysconfdir /etc %global _incdir %{_includedir} %global _ldldir /%{_lib}/bash @@ -129,8 +126,8 @@ %description devel This package contains the C header files for writing loadable new -builtins for the interpreter Bash. Use the output of the command -`pkg-config bash --cflags' on the compilers command line. +builtins for the interpreter Bash. Use -I /usr/include/bash/<version> +on the compilers command line. %package loadables Summary: Loadable bash builtins @@ -436,24 +433,19 @@ %install %make_install make -C examples/loadables/ install-supported DESTDIR=%{buildroot} libdir=/%{_lib} - mv -vf %{buildroot}%{_ldldir}/*.h %{buildroot}%{_includedir}/bash/ - mv -vf %{buildroot}%{_ldldir}/*.inc %{buildroot}%{_datadir}/bash rm -rf %{buildroot}%{_libdir}/bash rm -rf %{buildroot}/%{_lib}/pkgconfig sed -ri '/CC = gcc/s@(CC = gcc).*@\1@' %{buildroot}%{_libdir}/pkgconfig/bash.pc mkdir -p %{buildroot}/bin - mkdir -p %{buildroot}%{_sysconfdir}/alternatives -# -# It should be noted that the move of /bin/bash to /usr/bin/bash -# had NOT done by me at 2019/02/08. Now only a symbolic link -# remains here :( -# The same had happen for the system POSIX shell /bin/sh -# - ln -sf %{_bindir}/bash %{buildroot}%{_sysconfdir}/alternatives/sh - ln -sf %{_bindir}/bash %{buildroot}/bin/bash - ln -sf %{_bindir}/sh %{buildroot}/bin/sh - ln -sf bash %{buildroot}%{_bindir}/rbash - ln -sf bash %{buildroot}%{_bindir}/sh + mv %{buildroot}%{_bindir}/bash %{buildroot}/bin/ +%if %_minsh + install sh %{buildroot}/bin/sh + ln -sf ../../bin/sh %{buildroot}%{_bindir}/sh +%else + ln -sf bash %{buildroot}/bin/sh + ln -sf ../../bin/bash %{buildroot}%{_bindir}/sh +%endif + ln -sf ../../bin/bash %{buildroot}%{_bindir}/rbash install -m 644 COMPAT NEWS %{buildroot}%{_docdir}/%{name} install -m 644 COPYING %{buildroot}%{_docdir}/%{name} install -m 644 doc/FAQ %{buildroot}%{_docdir}/%{name} @@ -490,15 +482,6 @@ %find_lang bash %fdupes -s %{buildroot}%{_datadir}/bash/helpfiles -%post -p /bin/bash -%{_sbindir}/update-alternatives --quiet --force \ - --install %{_bindir}/sh sh %{_bindir}/bash 10100 - -%preun -p /bin/bash -if test "$1" = 0; then - %{_sbindir}/update-alternatives --quiet --remove sh %{_bindir}/bash -fi - %post doc %install_info --info-dir=%{_infodir} %{_infodir}/bash.info.gz @@ -508,7 +491,7 @@ %clean LD_LIBRARY_PATH=%{buildroot}/%{_lib} \ ldd -u -r %{buildroot}/bin/bash || true -%{?buildroot: %__rm -rf %{buildroot}} +%{?buildroot: %{__rm} -rf %{buildroot}} %files %defattr(-,root,root) @@ -516,14 +499,12 @@ %config %attr(600,root,root) %{_sysconfdir}/skel/.bash_history %config %attr(644,root,root) %{_sysconfdir}/skel/.bashrc %config %attr(644,root,root) %{_sysconfdir}/skel/.profile -%ghost %config %{_sysconfdir}/alternatives/sh -%dir %{_sysconfdir}/bash_completion.d /bin/bash /bin/sh -%{_bindir}/bash +%dir %{_sysconfdir}/bash_completion.d %{_bindir}/bashbug %{_bindir}/rbash -%verify(not link mtime) %{_bindir}/sh +%{_bindir}/sh %dir %{_datadir}/bash %dir %{_datadir}/bash/helpfiles %{_datadir}/bash/helpfiles/* @@ -540,16 +521,18 @@ %doc %{_mandir}/man1/rbash.1* %doc %{_docdir}/%{name} +%if 0%suse_version >= 1020 %files devel %defattr(-,root,root) -%dir %{_includedir}/bash/ -%dir %{_includedir}/bash/builtins/ -%dir %{_includedir}/bash/include/ -%{_incdir}/bash/*.h -%{_incdir}/bash/builtins/*.h -%{_incdir}/bash/include/*.h +%dir /%{_includedir}/bash/ +%dir /%{_includedir}/bash/ +%dir /%{_includedir}/bash/builtins/ +%dir /%{_includedir}/bash/include/ +/%{_incdir}/bash/*.h +/%{_incdir}/bash/builtins/*.h +/%{_incdir}/bash/include/*.h %{_libdir}/pkgconfig/bash.pc -%{_datadir}/bash/*.inc +%endif %files loadables %defattr(-,root,root) ++++++ bash-5.0-patches.tar.bz2 ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/bash-5.0-patches/bash50-001 new/bash-5.0-patches/bash50-001 --- old/bash-5.0-patches/bash50-001 2019-02-07 16:07:38.279394853 +0100 +++ new/bash-5.0-patches/bash50-001 2019-01-18 21:02:46.000000000 +0100 @@ -16,7 +16,7 @@ Patch (apply with `patch -p0'): -*** bashline.c 2018-11-27 13:20:16.000000000 -0500 +*** ../bash-5.0/bashline.c 2018-11-27 13:20:16.000000000 -0500 --- bashline.c 2019-01-16 16:06:03.000000000 -0500 *************** *** 232,235 **** @@ -127,7 +127,7 @@ ! if (t && completion_glob_pattern (t) == 0) rl_explicit_arg = 1; /* XXX - force glob_complete_word to append `*' */ FREE (t); -*** lib/glob/glob_loop.c 2018-12-31 13:35:15.000000000 -0500 +*** ../bash-5.0/lib/glob/glob_loop.c 2018-12-31 13:35:15.000000000 -0500 --- lib/glob/glob_loop.c 2019-01-09 09:44:36.000000000 -0500 *************** *** 55,59 **** @@ -149,7 +149,7 @@ } --- 60,63 ---- -*** patchlevel.h 2016-06-22 14:51:03.000000000 -0400 +*** ../bash-5.0/patchlevel.h 2016-06-22 14:51:03.000000000 -0400 --- patchlevel.h 2016-10-01 11:01:28.000000000 -0400 *************** *** 26,30 **** diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/bash-5.0-patches/bash50-002 new/bash-5.0-patches/bash50-002 --- old/bash-5.0-patches/bash50-002 2019-02-07 16:07:38.347393579 +0100 +++ new/bash-5.0-patches/bash50-002 2019-01-18 21:03:00.000000000 +0100 @@ -16,7 +16,7 @@ Patch (apply with `patch -p0'): -*** parser.h 2018-12-28 19:11:18.000000000 -0500 +*** ../bash-5.0/parser.h 2018-12-28 19:11:18.000000000 -0500 --- parser.h 2019-01-11 15:13:03.000000000 -0500 *************** *** 48,51 **** @@ -26,7 +26,7 @@ + #define PST_ENDALIAS 0x200000 /* just finished expanding and consuming an alias */ /* Definition of the delimiter stack. Needed by parse.y and bashhist.c. */ -*** parse.y 2019-01-02 13:57:34.000000000 -0500 +*** ../bash-5.0/parse.y 2019-01-02 13:57:34.000000000 -0500 --- parse.y 2019-01-14 08:23:31.000000000 -0500 *************** *** 2558,2567 **** @@ -61,7 +61,7 @@ + parser_state &= ~PST_ENDALIAS; pop_string (); uc = shell_input_line[shell_input_line_index]; -*** y.tab.c 2019-01-02 13:57:43.000000000 -0500 +*** ../bash-5.0/y.tab.c 2019-01-02 13:57:43.000000000 -0500 --- y.tab.c 2019-01-14 08:39:23.000000000 -0500 *************** *** 4874,4883 **** @@ -96,7 +96,7 @@ + parser_state &= ~PST_ENDALIAS; pop_string (); uc = shell_input_line[shell_input_line_index]; -*** patchlevel.h 2016-06-22 14:51:03.000000000 -0400 +*** ../bash-5.0/patchlevel.h 2016-06-22 14:51:03.000000000 -0400 --- patchlevel.h 2016-10-01 11:01:28.000000000 -0400 *************** *** 26,30 **** diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/bash-5.0-patches/globpat-backslashes.patch new/bash-5.0-patches/globpat-backslashes.patch --- old/bash-5.0-patches/globpat-backslashes.patch 2019-03-11 08:17:46.738836000 +0100 +++ new/bash-5.0-patches/globpat-backslashes.patch 1970-01-01 01:00:00.000000000 +0100 @@ -1,206 +0,0 @@ -*** ../bash-5.0-patched/lib/glob/glob_loop.c 2019-01-16 16:13:21.000000000 -0500 ---- lib/glob/glob_loop.c 2019-02-01 09:45:11.000000000 -0500 -*************** -*** 27,34 **** - register const GCHAR *p; - register GCHAR c; -! int bopen; - - p = pattern; -! bopen = 0; - - while ((c = *p++) != L('\0')) ---- 27,34 ---- - register const GCHAR *p; - register GCHAR c; -! int bopen, bsquote; - - p = pattern; -! bopen = bsquote = 0; - - while ((c = *p++) != L('\0')) -*************** -*** 56,66 **** - case L('\\'): - /* Don't let the pattern end in a backslash (GMATCH returns no match -! if the pattern ends in a backslash anyway), but otherwise return 1, -! since the matching engine uses backslash as an escape character -! and it can be removed. */ -! return (*p != L('\0')); - } - -! return 0; - } - ---- 56,75 ---- - case L('\\'): - /* Don't let the pattern end in a backslash (GMATCH returns no match -! if the pattern ends in a backslash anyway), but otherwise note that -! we have seen this, since the matching engine uses backslash as an -! escape character and it can be removed. We return 2 later if we -! have seen only backslash-escaped characters, so interested callers -! know they can shortcut and just dequote the pathname. */ -! if (*p != L('\0')) -! { -! p++; -! bsquote = 1; -! continue; -! } -! else /* (*p == L('\0')) */ -! return 0; - } - -! return bsquote ? 2 : 0; - } - -*** ../bash-5.0-patched/lib/glob/glob.h 2013-10-28 14:46:12.000000000 -0400 ---- lib/glob/glob.h 2019-03-07 11:06:47.000000000 -0500 -*************** -*** 31,34 **** ---- 31,35 ---- - #define GX_ADDCURDIR 0x200 /* internal -- add passed directory name */ - #define GX_GLOBSTAR 0x400 /* turn on special handling of ** */ -+ #define GX_RECURSE 0x800 /* internal -- glob_filename called recursively */ - - extern int glob_pattern_p __P((const char *)); -*** ../bash-5.0-patched/lib/glob/glob.c 2018-09-20 10:53:23.000000000 -0400 ---- lib/glob/glob.c 2019-03-07 14:23:43.000000000 -0500 -*************** -*** 1062,1066 **** - unsigned int directory_len; - int free_dirname; /* flag */ -! int dflags; - - result = (char **) malloc (sizeof (char *)); ---- 1078,1082 ---- - unsigned int directory_len; - int free_dirname; /* flag */ -! int dflags, hasglob; - - result = (char **) malloc (sizeof (char *)); -*************** -*** 1111,1117 **** - } - - /* If directory_name contains globbing characters, then we -! have to expand the previous levels. Just recurse. */ -! if (directory_len > 0 && glob_pattern_p (directory_name)) - { - char **directories, *d, *p; ---- 1127,1136 ---- - } - -+ hasglob = 0; - /* If directory_name contains globbing characters, then we -! have to expand the previous levels. Just recurse. -! If glob_pattern_p returns != [0,1] we have a pattern that has backslash -! quotes but no unquoted glob pattern characters. We dequote it below. */ -! if (directory_len > 0 && (hasglob = glob_pattern_p (directory_name)) == 1) - { - char **directories, *d, *p; -*************** -*** 1176,1180 **** - d[directory_len - 1] = '\0'; - -! directories = glob_filename (d, dflags); - - if (free_dirname) ---- 1195,1199 ---- - d[directory_len - 1] = '\0'; - -! directories = glob_filename (d, dflags|GX_RECURSE); - - if (free_dirname) -*************** -*** 1333,1336 **** ---- 1352,1369 ---- - return (NULL); - } -+ /* If we have a directory name with quoted characters, and we are -+ being called recursively to glob the directory portion of a pathname, -+ we need to dequote the directory name before returning it so the -+ caller can read the directory */ -+ if (directory_len > 0 && hasglob == 2 && (flags & GX_RECURSE) != 0) -+ { -+ dequote_pathname (directory_name); -+ directory_len = strlen (directory_name); -+ } -+ -+ /* We could check whether or not the dequoted directory_name is a -+ directory and return it here, returning the original directory_name -+ if not, but we don't do that yet. I'm not sure it matters. */ -+ - /* Handle GX_MARKDIRS here. */ - result[0] = (char *) malloc (directory_len + 1); -*** ../bash-5.0-patched/pathexp.c 2018-04-29 17:44:48.000000000 -0400 ---- pathexp.c 2019-01-31 20:19:41.000000000 -0500 -*************** -*** 66,74 **** - register int c; - char *send; -! int open; - - DECLARE_MBSTATE; - -! open = 0; - send = string + strlen (string); - ---- 66,74 ---- - register int c; - char *send; -! int open, bsquote; - - DECLARE_MBSTATE; - -! open = bsquote = 0; - send = string + strlen (string); - -*************** -*** 101,105 **** - globbing. */ - case '\\': -! return (*string != 0); - - case CTLESC: ---- 101,112 ---- - globbing. */ - case '\\': -! if (*string != '\0' && *string != '/') -! { -! bsquote = 1; -! string++; -! continue; -! } -! else if (*string == 0) -! return (0); - - case CTLESC: -*************** -*** 118,122 **** - #endif - } -! return (0); - } - ---- 125,130 ---- - #endif - } -! -! return (bsquote ? 2 : 0); - } - -*** ../bash-5.0-patched/bashline.c 2019-01-16 16:13:21.000000000 -0500 ---- bashline.c 2019-02-22 09:29:08.000000000 -0500 -*************** -*** 3753,3757 **** - - case '\\': -! if (*string == 0) - return (0); - } ---- 3766,3770 ---- - - case '\\': -! if (*string++ == 0) - return (0); - }
