Skip site navigation (1)Skip section navigation (2)
Date:      Sun,  2 Mar 2014 14:27:36 -0500 (EST)
From:      Adam Weinberger <adamw@FreeBSD.org>
To:        FreeBSD-gnats-submit@freebsd.org
Subject:   ports/187206: [patch] update shells/bash-devel to 4.3
Message-ID:  <20140302192736.8604311FDBF@apnoea.adamw.org>
Resent-Message-ID: <201403021930.s22JU0Kt094167@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help

>Number:         187206
>Category:       ports
>Synopsis:       [patch] update shells/bash-devel to 4.3
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          update
>Submitter-Id:   current-users
>Arrival-Date:   Sun Mar 02 19:30:00 UTC 2014
>Closed-Date:
>Last-Modified:
>Originator:     Adam Weinberger
>Release:        FreeBSD 10.0-STABLE i386
>Organization:
>Environment:
System: FreeBSD apnoea.adamw.org 10.0-STABLE FreeBSD 10.0-STABLE #0: Fri Feb 28 10:32:45 EST 2014 root@apnoea.adamw.org:/usr/obj/usr/src/sys/PEEP i386


>Description:

The attached patch updates to bash-4.3, and cleans up the Makefile.
A number of obrien-isms are removed, OPTIONS helpers are used,
unnecessary additions have been removed, and spacing is evened to
assuage my OCD.

I'm not really sure what is going on with the STATIC section. Do we
still need the defined(NO_DYNAMICROOT) || (defined(NOSHARED) && ${NOSHARED:L} != "no")
stuff? If not, you can replace it all with STATIC_CONFIGURE_ENABLE.

Also, do we still need a separate -static port? It seems unnecessary.

>How-To-Repeat:
>Fix:

--- bash-devel.patch begins here ---
Index: Makefile
===================================================================
--- Makefile	(revision 346785)
+++ Makefile	(working copy)
@@ -1,15 +1,14 @@
 # Created by: Emanuel Haupt <ehaupt@FreeBSD.org>
 # $FreeBSD$
 
-PORTNAME=		bash
-PATCHLEVEL=		45
-PORTVERSION=		4.2.${PATCHLEVEL:S/^0//g}
-PORTREVISION?=		2
-CATEGORIES=		shells
+PORTNAME=			bash
+PATCHLEVEL=			0
+PORTVERSION=		4.3.${PATCHLEVEL:S/^0//g}
+PORTREVISION?=		0
+CATEGORIES=			shells
 MASTER_SITES=		GNU
 MASTER_SITE_SUBDIR=	${PORTNAME}
-DISTNAME=		${PORTNAME}-${PORTVERSION:R}
-DISTFILES=		${DISTNAME}${EXTRACT_SUFX}
+DISTNAME=			${PORTNAME}-${PORTVERSION:R}
 DIST_SUBDIR=		${PORTNAME}
 EXTRACT_ONLY=		${DISTNAME}${EXTRACT_SUFX}
 
@@ -16,9 +15,9 @@
 PATCH_SITES=		${MASTER_SITE_GNU} \
 			ftp://ftp.cwru.edu/pub/%SUBDIR%/
 PATCH_SITE_SUBDIR=	${PORTNAME}/${DISTNAME}-patches/
-PATCHFILES!=		/usr/bin/jot -s " " -w \
-			${PORTNAME}${PORTVERSION:R:S/.//g}-%03d \
-			${PATCHLEVEL} 1 ${PATCHLEVEL}
+#PATCHFILES!=		/usr/bin/jot -s " " -w \
+#			${PORTNAME}${PORTVERSION:R:S/.//g}-%03d \
+#			${PATCHLEVEL} 1 ${PATCHLEVEL}
 
 MAINTAINER=		ehaupt@FreeBSD.org
 COMMENT=		The GNU Project's Bourne Again SHell
@@ -27,63 +26,43 @@
 
 OPTIONS_DEFINE=	IMPLICITCD COLONBREAKSWORDS HELP NLS STATIC SYSLOG DOCS
 OPTIONS_DEFAULT=IMPLICITCD COLONBREAKSWORDS HELP NLS
-IMPLICITCD_DESC=	Use directory name alone to cd into it
+IMPLICITCD_DESC=Use directory name alone to cd into it
 COLONBREAKSWORDS_DESC=	Colons break words
 HELP_DESC=		Enable builtin help
 
 USES=			bison
+OPTIONS_SUB=	yes
 
-.include <bsd.port.options.mk>
+IMPLICITCD_EXTRA_PATCHES=		${PATCHDIR}/extrapatch-implicitcd
+COLONBREAKSWORDS_EXTRA_PATCHES=	${PATCHDIR}/extrapatch-colonbreakswords
 
-.if ${PORT_OPTIONS:MIMPLICITCD}
-EXTRA_PATCHES+=		${PATCHDIR}/extrapatch-implicitcd
-.endif
+HELP_CONFIGURE_ENABLE=	help-builtin
+NLS_CONFIGURE_ENABLE=	nls
+NLS_USES=				gettext iconv
 
-.if ${PORT_OPTIONS:MCOLONBREAKSWORDS}
-EXTRA_PATCHES+=		${PATCHDIR}/extrapatch-colonbreakswords
-.endif
+INFO=	bash
 
-INFO=			bash
-
 MAKE_JOBS_UNSAFE=	yes
 GNU_CONFIGURE=		yes
 
-PORTDOCS=		FAQ INTRO CHANGES COMPAT NEWS POSIX RBASH
+PORTDOCS=	FAQ INTRO CHANGES COMPAT NEWS POSIX RBASH README bash.html bashref.html
 
-CONFIGURE_ARGS=		--without-bash-malloc \
+CONFIGURE_ARGS+=		--without-bash-malloc \
 			--disable-rpath \
 			--enable-disabled-builtins
 
+.include <bsd.port.options.mk>
+
 .if ${PORT_OPTIONS:MSTATIC} || defined(NO_DYNAMICROOT) || (defined(NOSHARED) && ${NOSHARED:L} != "no")
 CONFIGURE_ARGS+=	--enable-static-link
 PKGNAMESUFFIX=		-static-devel
 CONFLICTS+=		bash-[0-9]* bash-static-[0-9]* bash-devel-[0-9]*
 .else
-CONFIGURE_ARGS+=	--enable-static-link=no
+CONFIGURE_ARGS+=	--disable-static-link
 PKGNAMESUFFIX=		-devel
 CONFLICTS+=		bash-static-[0-9]* bash-[0-9]* bash-static-devel-[0-9]*
 .endif
 
-.if empty(PORT_OPTIONS:MHELP)
-CONFIGURE_ARGS+=	--disable-help-builtin
-.endif
-
-.if empty(PORT_OPTIONS:MNLS)
-CONFIGURE_ARGS+=	--disable-nls
-PLIST_SUB+=		NLS="@comment "
-.else
-USES+=			gettext iconv
-PLIST_SUB+=		NLS=""
-.endif
-
-CPPFLAGS+=		${PTHREAD_CFLAGS} \
-			-I${LOCALBASE}/include
-LDFLAGS+=		-L${LOCALBASE}/lib
-
-CONFIGURE_ENV=		YACC="bison -y" \
-			bash_cv_dev_fd=absent
-
-
 post-patch:
 	@${REINPLACE_CMD} -e "s|%%PREFIX%%|${PREFIX}|g" ${WRKSRC}/doc/bash.1
 .if ${PORT_OPTIONS:MSYSLOG}
@@ -106,11 +85,11 @@
 	@${ECHO_CMD} $$((${PORTREVISION}-1)) > ${WRKSRC}/.build
 
 post-install:
-	@cd ${STAGEDIR}${PREFIX}/bin ; ${LN} -sf bash rbash
+	${LN} -sf bash ${STAGEDIR}${PREFIX}/bin/rbash
 	@${MKDIR} ${STAGEDIR}${DOCSDIR}
-	@${INSTALL_DATA} ${WRKSRC}/doc/FAQ \
+	${INSTALL_DATA} ${WRKSRC}/doc/FAQ \
 		${WRKSRC}/doc/INTRO ${STAGEDIR}${DOCSDIR}
-	@for d in ${PORTDOCS:NFAQ:NINTRO}; do \
+	for d in ${PORTDOCS:NFAQ:NINTRO:N*html}; do \
 		${INSTALL_DATA} ${WRKSRC}/$${d} ${STAGEDIR}${DOCSDIR}; \
 	done
 
Index: distinfo
===================================================================
--- distinfo	(revision 346785)
+++ distinfo	(working copy)
@@ -1,92 +1,2 @@
-SHA256 (bash/bash-4.2.tar.gz) = a27a1179ec9c0830c65c6aa5d7dab60f7ce1a2a608618570f96bfa72e95ab3d8
-SIZE (bash/bash-4.2.tar.gz) = 7009201
-SHA256 (bash/bash42-001) = 8d6ca028576c4af23e660a2fbc2112221a11c8a785c0b37f033967e5cd12b47a
-SIZE (bash/bash42-001) = 2944
-SHA256 (bash/bash42-002) = febac927e199aceeba2004908d971d4afb49b521796c3f42d1166f9fbbfbcef9
-SIZE (bash/bash42-002) = 1780
-SHA256 (bash/bash42-003) = 5a0a7c15018c87348ea87cb0beea14345faf878dbb0e25c17fa70677194cb4cd
-SIZE (bash/bash42-003) = 6896
-SHA256 (bash/bash42-004) = 4e34b0f830d2583d56e14225a66937abc81f45bbafcd2eb49daf61c9462140c1
-SIZE (bash/bash42-004) = 1686
-SHA256 (bash/bash42-005) = a81749e73004b81cfdf0fe075bec365dc1fef756ee5e3fd142821e317d1459a0
-SIZE (bash/bash42-005) = 3424
-SHA256 (bash/bash42-006) = c91148945a2ddafa792682d7c8668c59e7e645eae1334b15b0d5d9ad22634bd1
-SIZE (bash/bash42-006) = 1187
-SHA256 (bash/bash42-007) = 405826acf443dd1084f236a15cb76d7f0ee2dbe5edff45c5fb836db571fb7e95
-SIZE (bash/bash42-007) = 1394
-SHA256 (bash/bash42-008) = 23080d11a60a78941210e2477f6bca066b45db03defa60da86fd765107ba2437
-SIZE (bash/bash42-008) = 2164
-SHA256 (bash/bash42-009) = e7ed5440b4c19765786e90e4f1ded43195d38b3e4d1c4b39fcc23de9a74ccb20
-SIZE (bash/bash42-009) = 2384
-SHA256 (bash/bash42-010) = acfc5482c25e6923116fcf4b4f7f6345b80f75ad7299749db4b736ad67aa43dc
-SIZE (bash/bash42-010) = 1818
-SHA256 (bash/bash42-011) = a491ae359a7ebbd7321aede561728289d71e1fc84777f402766a8afd4d261532
-SIZE (bash/bash42-011) = 1426
-SHA256 (bash/bash42-012) = 354433f1d2da02f1b9652cd20a5b85bbfb5bc2aaf79c42461ebd929d89b9b7b8
-SIZE (bash/bash42-012) = 4247
-SHA256 (bash/bash42-013) = 3412c5c6cbbce6c88592604aec054d8182ce64410038b5ecea69fc3968cf85ea
-SIZE (bash/bash42-013) = 1340
-SHA256 (bash/bash42-014) = b5a678e609858532735f94faedb5fabce00dfd6577a4e9ec5eec85fe682c8b33
-SIZE (bash/bash42-014) = 1434
-SHA256 (bash/bash42-015) = 2d876a8304bdf3d664e87e0a8d73bc4ccc100a9dd8c0d054e8649472d8748a98
-SIZE (bash/bash42-015) = 1991
-SHA256 (bash/bash42-016) = 2895ccbcf7fc98da73a8fa3ba7440aaf2bfaef6c0af8bdd3a9c39403cf03e2a6
-SIZE (bash/bash42-016) = 1410
-SHA256 (bash/bash42-017) = 73552444498c761d6073dd67ccfe043b36ef24bb418c266d91d9750884daee7f
-SIZE (bash/bash42-017) = 1399
-SHA256 (bash/bash42-018) = e2a9457172370d454d31b84bbcba758ee6394316dbe755374553b52aadbb494d
-SIZE (bash/bash42-018) = 1929
-SHA256 (bash/bash42-019) = a8b7cd02207656976016d93cab48e073cb5da002ceb27b7a63fc5ea62007eb56
-SIZE (bash/bash42-019) = 1415
-SHA256 (bash/bash42-020) = 494773f0d0078cb35372d24caa523b00d8fdbbaed71e41dc14c9e47579da3c6f
-SIZE (bash/bash42-020) = 1825
-SHA256 (bash/bash42-021) = a887a97be226575ecf483be2c76655bd6d1edde1cdfe199c27bd2e6baf32badc
-SIZE (bash/bash42-021) = 1532
-SHA256 (bash/bash42-022) = 9dcdf69df7f8cd2ba88d18c45a0d8f55fbe4f0e273411179db94dd6198b85c6b
-SIZE (bash/bash42-022) = 1395
-SHA256 (bash/bash42-023) = 5dc11394f1a6c887373c081396efd4f4cc04492696722c57a4811c207965f0bf
-SIZE (bash/bash42-023) = 1699
-SHA256 (bash/bash42-024) = 99c826bdd33bee281d0a9191550d62a24d0b256cd41c90afd10abd63a66b99e6
-SIZE (bash/bash42-024) = 1363
-SHA256 (bash/bash42-025) = 0db0646fd7a559d5702911192bdd387acbbc61cf3c29a34007c3ec840e275515
-SIZE (bash/bash42-025) = 3969
-SHA256 (bash/bash42-026) = e7e90cfaabbce3b4b9c699994e9d9ea4a2f084fd9f37788a80b0b70b47d323d2
-SIZE (bash/bash42-026) = 1577
-SHA256 (bash/bash42-027) = 0c1f6b7256fcc17f42c05f9bbb4138f8e8bb67e79c622c3485711b6f37f7ed42
-SIZE (bash/bash42-027) = 1461
-SHA256 (bash/bash42-028) = 204226de39ba81aaf3dd5a29cd59de052ec9f648538bb9e7f1c8150852b1ed7a
-SIZE (bash/bash42-028) = 1834
-SHA256 (bash/bash42-029) = d0b08c0817bc5acdb28b466727622a8422ca4d61188313cf162443b7f338f581
-SIZE (bash/bash42-029) = 16812
-SHA256 (bash/bash42-030) = 12594366591a136d8ccdcb8e218010f2ddab6be28a7f96d0ed32ca927e44afae
-SIZE (bash/bash42-030) = 5046
-SHA256 (bash/bash42-031) = 55f38c4d34775fbb063510c4222b195d998dd86f88288b64a6103e3812f8d9f9
-SIZE (bash/bash42-031) = 2047
-SHA256 (bash/bash42-032) = e3a8b563dbb1e5cb7ca85a53515da8b2941213973496d48c4cc5a11c604791ed
-SIZE (bash/bash42-032) = 2416
-SHA256 (bash/bash42-033) = f5d12790d69fdfb2f47ac86fa1ea1ecc088880141570273f38dfd3fa4a46434b
-SIZE (bash/bash42-033) = 1634
-SHA256 (bash/bash42-034) = 01c1f332101389cedf347c7736102966722a3b213900954e5d625bbc2f1e41b8
-SIZE (bash/bash42-034) = 1345
-SHA256 (bash/bash42-035) = cecde463b038b4849635ff0993d9b264fc92403e7ae0accb52c7877aeaed78df
-SIZE (bash/bash42-035) = 1920
-SHA256 (bash/bash42-036) = fe293a1bc92ac4d272ae9b9a0de3afef7c06145a2b52337a09cacccc5305aafa
-SIZE (bash/bash42-036) = 3123
-SHA256 (bash/bash42-037) = c7578cddd3bb2430689c740f58a03403800726dcd1268b28f91bf37f368e1674
-SIZE (bash/bash42-037) = 3483
-SHA256 (bash/bash42-038) = b8c9a81bdf206be58ba491dfad80373b3348af769e80aaf72f7611ddbbbe6d57
-SIZE (bash/bash42-038) = 1290
-SHA256 (bash/bash42-039) = f4f9300a60321a5088ae9e54052a64c4d3e876f9a3a17ca104d58fa38b9c1791
-SIZE (bash/bash42-039) = 1603
-SHA256 (bash/bash42-040) = b265f9caf3c7321f95bc8e0b9e2c46bd86c226f00f05e823699aafb83c4aaa6c
-SIZE (bash/bash42-040) = 1710
-SHA256 (bash/bash42-041) = 05cc1951bd9f6624088dd6067486ff47f1825e333273d7df5f1b06b23baaf5eb
-SIZE (bash/bash42-041) = 1463
-SHA256 (bash/bash42-042) = faaa5c1f456517b258b2a65eaa664dd6a01eeff73c8ca4447c3a6de371bbf304
-SIZE (bash/bash42-042) = 1571
-SHA256 (bash/bash42-043) = dc2683840f3e890a9c5f85338366ff6cd923285e558eb46aa818a03fa67c5c57
-SIZE (bash/bash42-043) = 2110
-SHA256 (bash/bash42-044) = 10d32d6c9ccdedb1d826f46468631d475f9dcf983fac087766e16df7b99766e6
-SIZE (bash/bash42-044) = 1871
-SHA256 (bash/bash42-045) = ddb7eff0f59d394a483b09feec3771d9026f81ba90afac32846a19b172b2986d
-SIZE (bash/bash42-045) = 1572
+SHA256 (bash/bash-4.3.tar.gz) = afc687a28e0e24dc21b988fa159ff9dbcf6b7caa92ade8645cc6d5605cd024d4
+SIZE (bash/bash-4.3.tar.gz) = 7955839
Index: files/extrapatch-colonbreakswords
===================================================================
--- files/extrapatch-colonbreakswords	(revision 346785)
+++ files/extrapatch-colonbreakswords	(working copy)
@@ -1,6 +1,6 @@
---- bashline.c.orig	2009-01-08 06:29:24.000000000 -0800
-+++ bashline.c	2012-07-30 15:07:10.000000000 -0500
-@@ -235,6 +235,11 @@ int bash_readline_initialized = 0;
+--- bashline.c.orig	2014-03-02 13:26:23.000000000 -0500
++++ bashline.c	2014-03-02 13:30:09.000000000 -0500
+@@ -255,6 +255,11 @@
     host list. */
  int perform_hostname_completion = 1;
  
@@ -12,7 +12,7 @@
  /* If non-zero, we don't do command completion on an empty line. */
  int no_empty_command_completion;
  
-@@ -252,7 +257,8 @@ int dircomplete_expand_relpath = 0;
+@@ -284,7 +289,8 @@
  
  static char *bash_completer_word_break_characters = " \t\n\"'@><=;|&(:";
  static char *bash_nohostname_word_break_characters = " \t\n\"'><=;|&(:";
@@ -22,7 +22,7 @@
  
  static const char *default_filename_quote_characters = " \t\n\\\"'@<>=;|&()#$`?*[!:{~";	/*}*/
  static char *custom_filename_quote_characters = 0;
-@@ -370,6 +376,80 @@ enable_hostname_completion (on_or_off)
+@@ -403,6 +409,80 @@
    return (old_value);
  }
  
@@ -45,7 +45,7 @@
 +  else
 +    {
 +      colon_is_wordbreak = 0;
-+      rl_filename_quote_characters = " \t\n\\\"'@<>=;|&()#$`?*[!{~";	/*}*/
++      rl_filename_quote_characters = " \t\n\\\"'@<>=;|&()#$`?*[!{~";   /*}*/
 +    }
 +
 +  /* Now we need to figure out how to appropriately modify and assign
@@ -57,13 +57,13 @@
 +     allocate new memory for rl_completer_word_break_characters. */
 +
 +  if (bash_readline_initialized == 0 &&
-+      (rl_completer_word_break_characters == 0 || 
++      (rl_completer_word_break_characters == 0 ||
 +       rl_completer_word_break_characters == rl_basic_word_break_characters))
 +    {
 +      if (on_or_off)
-+	rl_completer_word_break_characters = savestring (bash_completer_word_break_characters);
++       rl_completer_word_break_characters = savestring (bash_completer_word_break_characters);
 +      else
-+	rl_completer_word_break_characters = savestring (bash_nocolon_word_break_characters);
++       rl_completer_word_break_characters = savestring (bash_nocolon_word_break_characters);
 +    }
 +  else
 +    {
@@ -76,21 +76,21 @@
 +      nval = (char *)xmalloc (strlen (rl_completer_word_break_characters) + 1 + on_or_off);
 +
 +      if (on_or_off == 0)
-+	{
-+	  /* Turn it off -- just remove `:' from word break chars.  We want
-+	     to remove all occurrences of `:' from the char list, so we loop
-+	     rather than just copy the rest of the list over AT. */
-+	  for (nv = nval, at = rl_completer_word_break_characters; *at; )
-+	    if (*at != ':')
-+	      *nv++ = *at++;
-+	    else
-+	      at++;
-+	  *nv = '\0';
-+	}
++       {
++         /* Turn it off -- just remove `:' from word break chars.  We want
++            to remove all occurrences of `:' from the char list, so we loop
++            rather than just copy the rest of the list over AT. */
++         for (nv = nval, at = rl_completer_word_break_characters; *at; )
++           if (*at != ':')
++             *nv++ = *at++;
++           else
++             at++;
++         *nv = '\0';
++       }
 +      else
-+	{
-+	  nval[0] = ':';
-+	  strcpy (nval + 1, rl_completer_word_break_characters);
++       {
++         nval[0] = ':';
++         strcpy (nval + 1, rl_completer_word_break_characters);
 +        }
 +
 +      free (rl_completer_word_break_characters);
@@ -103,7 +103,7 @@
  /* Called once from parse.y if we are going to use readline. */
  void
  initialize_readline ()
-@@ -538,8 +618,13 @@ initialize_readline ()
+@@ -573,8 +653,13 @@
       completion is enabled. */
    enable_hostname_completion (perform_hostname_completion);
  
@@ -115,13 +115,13 @@
    /* characters that need to be quoted when appearing in filenames. */
 -  rl_filename_quote_characters = default_filename_quote_characters;
 +//  rl_filename_quote_characters = default_filename_quote_characters;
+   set_filename_bstab (rl_filename_quote_characters);
  
    rl_filename_quoting_function = bash_quote_filename;
-   rl_filename_dequoting_function = bash_dequote_filename;
---- builtins/shopt.def.orig	2009-01-13 05:43:16.000000000 -0800
-+++ builtins/shopt.def	2009-03-08 01:03:39.000000000 -0800
-@@ -96,6 +97,8 @@ extern int force_fignore;
- extern int dircomplete_spelling;
+--- builtins/shopt.def.orig	2014-03-02 13:30:44.000000000 -0500
++++ builtins/shopt.def	2014-03-02 13:31:38.000000000 -0500
+@@ -103,6 +103,8 @@
+ extern int complete_fullquote;
  
  extern int enable_hostname_completion __P((int));
 +extern int colon_is_wordbreak;
@@ -129,8 +129,8 @@
  #endif
  
  #if defined (PROGRAMMABLE_COMPLETION)
-@@ -147,6 +150,9 @@ static struct {
- #if defined (READLINE)
+@@ -166,6 +168,9 @@
+   { "direxpand", &dircomplete_expand, shopt_set_complete_direxpand },
    { "dirspell", &dircomplete_spelling, (shopt_set_func_t *)NULL },
  #endif
 +#if defined (READLINE)
@@ -139,9 +139,9 @@
    { "dotglob", &glob_dot_filenames, (shopt_set_func_t *)NULL },
    { "execfail", &no_exit_on_failed_exec, (shopt_set_func_t *)NULL },
    { "expand_aliases", &expand_aliases, (shopt_set_func_t *)NULL },
---- doc/bash.1.orig	2009-03-08 00:53:01.000000000 -0800
-+++ doc/bash.1	2009-03-08 01:05:32.000000000 -0800
-@@ -8473,6 +8473,18 @@ attempts to save all lines of a multiple
+--- doc/bash.1.orig	2014-03-02 13:32:14.000000000 -0500
++++ doc/bash.1	2014-03-02 13:32:40.000000000 -0500
+@@ -9252,6 +9252,18 @@
  command in the same history entry.  This allows
  easy re-editing of multi-line commands.
  .TP 8
@@ -160,9 +160,9 @@
  .B compat31
  If set,
  .B bash
---- doc/bashref.texi.orig	2009-03-08 00:53:01.000000000 -0800
-+++ doc/bashref.texi	2009-03-08 01:07:00.000000000 -0800
-@@ -4321,6 +4321,11 @@ attempts to save all lines of a multiple
+--- doc/bashref.texi.orig	2014-03-02 13:33:17.000000000 -0500
++++ doc/bashref.texi	2014-03-02 13:33:44.000000000 -0500
+@@ -4937,6 +4937,11 @@
  command in the same history entry.  This allows
  easy re-editing of multi-line commands.
  
@@ -171,3 +171,6 @@
 +separating word being completed (@pxref{Commands For Completion}).
 +This option is enabled by default.
 +
+ @item compat31
+ If set, Bash
+ changes its behavior to that of version 3.1 with respect to quoted
Index: files/extrapatch-implicitcd
===================================================================
--- files/extrapatch-implicitcd	(revision 346785)
+++ files/extrapatch-implicitcd	(working copy)
@@ -1,13 +1,9 @@
-#
-# new shopt `implicitcd'
-# http://lists.gnu.org/archive/html/bug-bash/2004-09/msg00024.html
-#
---- execute_cmd.c.orig	Sat Nov  5 17:37:21 2005
-+++ execute_cmd.c	Wed Dec 28 19:38:09 2005
-@@ -190,6 +190,9 @@
- /* The line number that the currently executing function starts on. */
- static int function_line_number;
+--- execute_cmd.c.orig	2014-03-02 13:15:12.000000000 -0500
++++ execute_cmd.c	2014-03-02 13:17:14.000000000 -0500
+@@ -199,6 +199,9 @@
  
+ static int execute_intern_function __P((WORD_DESC *, FUNCTION_DEF *));
+ 
 +/* add an implicit `cd' if the command is the name of a directory */
 +int implicitcd = 0;
 +
@@ -14,30 +10,30 @@
  /* Set to 1 if fd 0 was the subject of redirection to a subshell.  Global
     so that reader_loop can set it to zero before executing a command. */
  int stdin_redir;
-@@ -2913,6 +2916,20 @@
-   this_command_name = words->word->word;
+@@ -4111,6 +4114,20 @@
  
    QUIT;
-+
+ 
 +  if (implicitcd && interactive_shell && words->next == NULL && func == 0 && builtin == 0)
 +    {
 +      struct stat finfo;
 +
 +      if ((stat (words->word->word, &finfo) == 0) && (S_ISDIR (finfo.st_mode)))
-+	{
-+	  this_command_name = "cd";
-+	  last_shell_builtin = this_shell_builtin;
-+	  this_shell_builtin = builtin_address (this_command_name);       
-+	  result = (*this_shell_builtin) (words);
-+	  goto return_result;
-+	}
++       {
++         this_command_name = "cd";
++         last_shell_builtin = this_shell_builtin;
++         this_shell_builtin = builtin_address (this_command_name);
++         result = (*this_shell_builtin) (words);
++         goto return_result;
++       }
 +    }
- 
++
    /* This command could be a shell builtin or a user-defined function.
       We have already found special builtins by this time, so we do not
---- builtins/shopt.def.orig	Sat Feb 19 19:25:03 2005
-+++ builtins/shopt.def	Wed Dec 28 19:38:09 2005
-@@ -66,6 +66,7 @@
+      set builtin_is_special.  If this is a function or builtin, and we
+--- builtins/shopt.def.orig	2014-03-02 13:18:07.000000000 -0500
++++ builtins/shopt.def	2014-03-02 13:19:22.000000000 -0500
+@@ -83,6 +83,7 @@
  extern int check_window_size;
  extern int glob_ignore_case, match_ignore_case;
  extern int hup_on_exit;
@@ -44,26 +40,26 @@
 +extern int implicitcd;
  extern int xpg_echo;
  extern int gnu_error_format;
- 
-@@ -145,6 +146,7 @@
-   { "hostcomplete", &perform_hostname_completion, enable_hostname_completion },
+ extern int check_jobs_at_exit;
+@@ -192,6 +193,7 @@
+   { "hostcomplete", &perform_hostname_completion, shopt_enable_hostname_completion },
  #endif
    { "huponexit", &hup_on_exit, (shopt_set_func_t *)NULL },
 +  { "implicitcd", &implicitcd, (shopt_set_func_t *)NULL },
    { "interactive_comments", &interactive_comments, set_shellopts_after_change },
+   { "lastpipe", &lastpipe_opt, (shopt_set_func_t *)NULL },
  #if defined (HISTORY)
-   { "lithist", &literal_history, (shopt_set_func_t *)NULL },
-@@ -253,6 +255,7 @@
+@@ -305,6 +307,7 @@
    cdable_vars = mail_warning = 0;
    no_exit_on_failed_exec = print_shift_error = 0;
-   check_hashed_filenames = cdspelling = expand_aliases = check_window_size = 0;
+   check_hashed_filenames = cdspelling = expand_aliases = 0;
 +  implicitcd = 0;
  
    source_uses_path = promptvars = 1;
  
---- doc/bash.1.orig	Wed Oct 12 12:40:52 2005
-+++ doc/bash.1	Wed Dec 28 19:38:09 2005
-@@ -8090,6 +8090,15 @@
+--- doc/bash.1.orig	2014-03-02 13:19:59.000000000 -0500
++++ doc/bash.1	2014-03-02 13:21:10.000000000 -0500
+@@ -9480,6 +9480,15 @@
  .B SIGHUP
  to all jobs when an interactive login shell exits.
  .TP 8
@@ -79,9 +75,9 @@
  .B interactive_comments
  If set, allow a word beginning with
  .B #
---- doc/bashref.texi.orig	Mon Oct  3 16:07:21 2005
-+++ doc/bashref.texi	Wed Dec 28 19:38:09 2005
-@@ -3697,6 +3697,15 @@
+--- doc/bashref.texi.orig	2014-03-02 13:21:54.000000000 -0500
++++ doc/bashref.texi	2014-03-02 13:22:31.000000000 -0500
+@@ -5118,6 +5118,15 @@
  If set, Bash will send @code{SIGHUP} to all jobs when an interactive
  login shell exits (@pxref{Signals}).
  
Index: files/patch-config-top.h
===================================================================
--- files/patch-config-top.h	(revision 346785)
+++ files/patch-config-top.h	(working copy)
@@ -1,10 +1,10 @@
---- config-top.h.orig	Wed Dec 28 19:52:23 2005
-+++ config-top.h	Wed Dec 28 19:54:12 2005
-@@ -52,18 +52,18 @@
+--- config-top.h.orig	2014-03-02 13:36:24.000000000 -0500
++++ config-top.h	2014-03-02 13:38:13.000000000 -0500
+@@ -59,18 +59,18 @@
  /* The default value of the PATH variable. */
  #ifndef DEFAULT_PATH_VALUE
  #define DEFAULT_PATH_VALUE \
--  "/usr/gnu/bin:/usr/local/bin:/bin:/usr/bin:."
+-  "/usr/local/bin:/usr/local/sbin:/usr/bin:/usr/sbin:/bin:/sbin:."
 +  "/sbin:/bin:/usr/sbin:/usr/bin:/usr/games:%%LOCALBASE%%/sbin:%%LOCALBASE%%/bin"
  #endif
  
Index: files/patch-doc_Makefile.in
===================================================================
--- files/patch-doc_Makefile.in	(revision 346785)
+++ files/patch-doc_Makefile.in	(working copy)
@@ -1,18 +1,21 @@
---- doc/Makefile.in.orig	Wed Dec 28 20:00:02 2005
-+++ doc/Makefile.in	Wed Dec 28 20:00:58 2005
-@@ -161,14 +161,11 @@
+--- doc/Makefile.in.orig	2014-03-02 13:39:04.000000000 -0500
++++ doc/Makefile.in	2014-03-02 13:39:56.000000000 -0500
+@@ -167,7 +167,7 @@
  bashref.dvi: $(BASHREF_FILES) $(HSUSER) $(RLUSER)
- 	${SET_TEXINPUTS} $(TEXI2DVI) $(srcdir)/bashref.texi
+ 	${SET_TEXINPUTS} $(TEXI2DVI) $(srcdir)/bashref.texi || { ${RM} $@ ; exit 1; }
  
 -bashref.info: $(BASHREF_FILES) $(HSUSER) $(RLUSER)
 +bash.info: $(BASHREF_FILES) $(HSUSER) $(RLUSER)
  	$(MAKEINFO) --no-split -I$(TEXINPUTDIR) $(srcdir)/bashref.texi
  
+ # can also use:
+@@ -175,9 +175,6 @@
  bashref.html: $(BASHREF_FILES) $(HSUSER) $(RLUSER)
  	$(TEXI2HTML) -menu -monolithic -I $(TEXINPUTDIR) $(srcdir)/bashref.texi
--
+ 
 -bash.info: bashref.info
 -	${SHELL} ${INFOPOST} < $(srcdir)/bashref.info > $@ ; \
- 
+-
  bash.txt: bash.1
  bash.ps: bash.1
+ bash.html: bash.1 $(MAN2HTML)
Index: files/patch-doc_bashref.texi
===================================================================
--- files/patch-doc_bashref.texi	(revision 346785)
+++ files/patch-doc_bashref.texi	(working copy)
@@ -1,5 +1,5 @@
---- doc/bashref.texi.orig	Wed Dec 28 19:44:28 2005
-+++ doc/bashref.texi	Wed Dec 28 20:09:16 2005
+--- doc/bashref.texi.orig	2014-03-02 13:40:51.000000000 -0500
++++ doc/bashref.texi	2014-03-02 13:42:04.000000000 -0500
 @@ -1,6 +1,6 @@
  \input texinfo.tex @c -*- texinfo -*-
  @c %**start of header
@@ -6,9 +6,9 @@
 -@setfilename bashref.info
 +@setfilename bash.info
  @settitle Bash Reference Manual
- @c %**end of header
  
-@@ -10,7 +10,7 @@
+ @include version.texi
+@@ -8,7 +8,7 @@
  
  @copying
  This text is a brief description of the features that are present in
@@ -17,12 +17,12 @@
  
  This is Edition @value{EDITION}, last updated @value{UPDATED},
  of @cite{The GNU Bash Reference Manual},
-@@ -4277,7 +4277,7 @@
+@@ -5299,7 +5299,7 @@
  
  
  @item PS1
 -The primary prompt string.  The default value is @samp{\s-\v\$ }.
 +The primary prompt string.  The default value is @samp{[\u@@\h \w]\$ }.
- @xref{Printing a Prompt}, for the complete list of escape
+ @xref{Controlling the Prompt}, for the complete list of escape
  sequences that are expanded before @env{PS1} is displayed.
  
Index: pkg-plist
===================================================================
--- pkg-plist	(revision 346785)
+++ pkg-plist	(working copy)
@@ -11,7 +11,9 @@
 %%NLS%%share/locale/bg/LC_MESSAGES/bash.mo
 %%NLS%%share/locale/ca/LC_MESSAGES/bash.mo
 %%NLS%%share/locale/cs/LC_MESSAGES/bash.mo
+%%NLS%%share/locale/da/LC_MESSAGES/bash.mo
 %%NLS%%share/locale/de/LC_MESSAGES/bash.mo
+%%NLS%%share/locale/el/LC_MESSAGES/bash.mo
 %%NLS%%share/locale/en@boldquot/LC_MESSAGES/bash.mo
 %%NLS%%share/locale/en@quot/LC_MESSAGES/bash.mo
 %%NLS%%share/locale/eo/LC_MESSAGES/bash.mo
@@ -20,8 +22,11 @@
 %%NLS%%share/locale/fi/LC_MESSAGES/bash.mo
 %%NLS%%share/locale/fr/LC_MESSAGES/bash.mo
 %%NLS%%share/locale/ga/LC_MESSAGES/bash.mo
+%%NLS%%share/locale/gl/LC_MESSAGES/bash.mo
 %%NLS%%share/locale/hu/LC_MESSAGES/bash.mo
+%%NLS%%share/locale/hr/LC_MESSAGES/bash.mo
 %%NLS%%share/locale/id/LC_MESSAGES/bash.mo
+%%NLS%%share/locale/it/LC_MESSAGES/bash.mo
 %%NLS%%share/locale/ja/LC_MESSAGES/bash.mo
 %%NLS%%share/locale/lt/LC_MESSAGES/bash.mo
 %%NLS%%share/locale/nl/LC_MESSAGES/bash.mo
@@ -30,6 +35,8 @@
 %%NLS%%share/locale/ro/LC_MESSAGES/bash.mo
 %%NLS%%share/locale/ru/LC_MESSAGES/bash.mo
 %%NLS%%share/locale/sk/LC_MESSAGES/bash.mo
+%%NLS%%share/locale/sl/LC_MESSAGES/bash.mo
+%%NLS%%share/locale/sr/LC_MESSAGES/bash.mo
 %%NLS%%share/locale/sv/LC_MESSAGES/bash.mo
 %%NLS%%share/locale/tr/LC_MESSAGES/bash.mo
 %%NLS%%share/locale/uk/LC_MESSAGES/bash.mo
--- bash-devel.patch ends here ---


>Release-Note:
>Audit-Trail:
>Unformatted:



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20140302192736.8604311FDBF>