delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp-workers/2001/12/15/19:45:53

X-Authentication-Warning: delorie.com: mailnull set sender to djgpp-workers-bounces using -f
X-Authentication-Warning: new-smtp2.ihug.com.au: Host p73-tnt7.syd.ihug.com.au [203.173.144.73] claimed to be acceleron
Message-ID: <009901c185ca$e08587e0$0102a8c0@acceleron>
From: "Andrew Cottrell" <acottrel AT ihug DOT com DOT au>
To: "Charles Sandmann" <sandmann AT clio DOT rice DOT edu>
Cc: <djgpp-workers AT delorie DOT com>
References: <10112160002 DOT AA20943 AT clio DOT rice DOT edu>
Subject: Re: Refresh Proposal
Date: Sun, 16 Dec 2001 11:44:22 +1100
MIME-Version: 1.0
X-Priority: 3
X-MSMail-Priority: Normal
X-Mailer: Microsoft Outlook Express 6.00.2600.0000
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000
Reply-To: djgpp-workers AT delorie DOT com

> > 2.04 builds out of the source using the 2.03 files. I still don't like
using
> > it on 2K or XP as it has limitations to do with the path.
>
> Path limitations?  Tell me more.  An easy fix someplace?  I remember that
> 2.03 had replacements for some of the library routines?
The problem is that the Bash 2.04 has an array that is used for path
expansion (or something like that) and as such when it is used on 2K or Xp
with a long (read HUGH) path length there was problems with this. Early
versions of Bash 2.05 also had problems with this, but Mark's 8-Oct-2001
fixed the last Bash issue that I seen. IMHO Bash 2.05 should be the ONE we
shoul;d try to get working with LIBC 2.03. The changes should be minor in
order to get the

> > The 2.05 needs a
> > small change  to the 2.03 LIBC in order for it to build. (process.c If I
> > recall correctly from last weekend).
>
> More info?  (no process.c in the libc).

Bash 2.05 & LIBC 2.03 (11-Dec-2001) changes:

C1) In  djgpp\include\process.h add the following from 2.04 CVS source tree
    #define SPAWN_EXTENSION_SRCH    1
    #define SPAWN_NO_EXTENSION_SRCH 2

C2) In  djgpp\include\fcntl.h add the following from 2.04 CVS source tree
    /* Additional non-POSIX flags for open(). */
    /* They are present on GNU libc. */
    #define O_NOLINK        0x4000
    #define O_NOFOLLOW      0x8000

    #define O_TEMPORARY 0x10000 /* Delete on close.  */

C3) In  djgpp\include\process.h add the following from 2.04 CVS source tree
    int __djgpp_spawn(int _mode, const char *_path, char *const _argv[],
char *const _envp[], unsigned long _flags);
C4) In  djgpp\src\libc\dos\process\dosexec.c add the following function from
2.04 CVS source tree
    int __djgpp_spawn(int _mode, const char *_path, char *const _argv[],
char *const _envp[], unsigned long _flags);
C5) In  djgpp\src\libc\dos\process\dosexec.c modfyb the following function
from 2.04 CVS source tree
    int __spawnve(int mode, const char *path, char *const argv[],
              char *const envp[])
C6) rebuild LIBC.

I am just checking out these to see how the resulting Bash works.

> > > This one intimidated me (2.04 vs 2.05, package replacements for libc,
etc)
> > > vs a straight compile.  I'd need advice.
>
> > I't a double edged sword. If you use Bash 2.04 then you will find issues
> > under 2K & XP, but Bash 2.05 can't be built from the sources with LIBC
> > 2.03!!! After I check out the LIBC 2.03 update I will see if it is
feasible
> > to use a modified Bash 2.05 sources with LIBC 2.03.
>
> I'd love to get these resolved ... Tell me more.  I'll start to unpack the
> bash sources on the build box.
I'm in the process of building an updated Bash 2.05. The info above is where
I am up to.

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019