Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 23 Apr 2014 13:36:56 -0400
From:      Jung-uk Kim <jkim@FreeBSD.org>
To:        Wolfgang Jenkner <wjenkner@inode.at>, Emanuel Haupt <ehaupt@critical.ch>
Cc:        olli hauer <ohauer@gmx.de>, svn-ports-all@FreeBSD.org, ports-committers@freebsd.org, Emanuel Haupt <ehaupt@FreeBSD.org>, Adam Weinberger <adamw@adamw.org>
Subject:   Re: svn commit: r351864 - head/shells/bash
Message-ID:  <5357FA38.10200@FreeBSD.org>
In-Reply-To: <85ha5kgdu8.fsf@iznogoud.viz>
References:  <5356B13D.3010600@gmx.de>	<3C27DBBC-628F-48F7-9EC4-82C7BA559D85@adamw.org>	<20140423102806.daa72bd1fec855d882d47163@critical.ch> <85ha5kgdu8.fsf@iznogoud.viz>

next in thread | previous in thread | raw e-mail | index | archive | help
This is a multi-part message in MIME format.
--------------080308030503020804040701
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

On 2014-04-23 13:06:35 -0400, Wolfgang Jenkner wrote:
> On Wed, Apr 23 2014, Emanuel Haupt wrote:
> 
>> "Adam Weinberger" <adamw@adamw.org> wrote:
>>> Also I'm confused by the statement "bash requires fdescfs(5)
>>> mounted on /dev/fd", as it runs just fine without it. Perhaps
>>> it should be changed to: bash will support a '/dev/fd/N' syntax
>>> if fdescfs(5) is mounted on /dev/fd
>> 
>> Adam, this seems more accurate. Please feel free to commit.
> 
> This is not quite true either, but kib@ perfectly explained the
> awkward situation in
> 
> http://permalink.gmane.org/gmane.os.freebsd.devel.amd64/15636
> 
> Also (if you look at what started the thread) the main problem is
> not the /dev/fd/* syntax per se, but the process substitution
> feature, as mat@ already observed.
> 
> So I'd suggest something like
> 
> You should mount fdescfs(5) on /dev/fd if you are installing a
> precompiled package from an official pkg repository or, more 
> generally, if bash was compiled with fdescfs(5) being mounted.
> 
> The reason is that bash implements process substitution by means of
> the file-descriptor file system if that was mounted at build time.
> 
> For details, please see `Process Substitution' in the bash(1)
> manual.

The attached patch should force configure script to use /dev/fd.

Jung-uk Kim
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.22 (FreeBSD)

iQEcBAEBAgAGBQJTV/o4AAoJEHyflib82/FGVZsH/0LS52li6o/qoQCp1uayylSZ
OtYEFzJKiF9yo0iCl472SNHzLHB9VyFlaiKFNsRivlYWz8EtVlzoSA5erQ5X+8Dg
Krbw6MFifgUeojAeD6MPb7K3ewsHNhcfOc0UmEoGsXOyvvd0b25ICpg5VAXIHl7f
pUj+zw5Pn//fdT+aaXclGjUN8CD+FwYO6yanRCjByhqGDqGNo4xjgCbAA3wTnMAC
4CUV36JNRYW8W1hoHdIhC+yrUzgxg+Tdb8vbvGA8BTVtfUzzvuuCnsKO7fbIMuep
bQTNJxOeyQrHLY+lfHpEk7YNFuGajbpuBkRNkfX0L9JOhBPh5Cya83JCeJ2+y+s=
=otzk
-----END PGP SIGNATURE-----

--------------080308030503020804040701
Content-Type: text/x-patch;
 name="bash.diff"
Content-Transfer-Encoding: 7bit
Content-Disposition: attachment;
 filename="bash.diff"

Index: shells/bash/Makefile
===================================================================
--- shells/bash/Makefile	(revision 351960)
+++ shells/bash/Makefile	(working copy)
@@ -51,6 +51,7 @@ PORTDOCS=		FAQ INTRO CHANGES COMPAT NEWS POSIX RBA
 CONFIGURE_ARGS+=	--without-bash-malloc \
 			--disable-rpath \
 			--enable-disabled-builtins
+CONFIGURE_ENV=		bash_cv_dev_fd=standard
 
 .include <bsd.port.options.mk>
 

--------------080308030503020804040701--



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