www.delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp-workers/2009/08/26/20:43:48

X-Authentication-Warning: delorie.com: mail set sender to djgpp-workers-bounces using -f
X-Recipient: djgpp-workers AT delorie DOT com
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
d=gmail.com; s=gamma;
h=domainkey-signature:mime-version:received:date:message-id:subject
:from:to:content-type:content-transfer-encoding;
bh=VdZ0zTL0Pwu2bcuE0cd7bSaLAGWXoxhFr1u/j4FSHzM=;
b=XAyi+kxD9OuVBed9mlOzCznYk3lpCP1OMTmxT/SM4UBx0IcD4OKIQ3vGICDVWbWHLv
pGGwVIhPNPlD79tQZcKVV0Yd0E84CWPclpOjeLfbz8xXNLnOcS/I7nJ7z6MJyI+dzJUr
JsG2rBcqUFRILzL8d2PyWF9ekKpN7gllV6vgU=
DomainKey-Signature: a=rsa-sha1; c=nofws;
d=gmail.com; s=gamma;
h=mime-version:date:message-id:subject:from:to:content-type
:content-transfer-encoding;
b=TFa+LRp6eQ51ZLBT6T10HYK4vjiDvPvM2uSpbIQGLI5KNGBRKJfHIwrPm2RHlHtzr0
uborfQuSV6Ouok1fdArCub3ffSTBsNGzm9rApe45Lx2P7wWmusvgu+NbtM5rDFwK87RN
0+J7VnLLlET1K8QmglNm2GfTV+P2JCl/Shabg=
MIME-Version: 1.0
Date: Wed, 26 Aug 2009 19:22:04 -0500
Message-ID: <93c172b50908261722r1c3e8767x4843a3285737dae0@mail.gmail.com>
Subject: dash (Debian Ash), compiles but won't work ... yet ("Cannot fork")
From: Rugxulo <rugxulo AT gmail DOT com>
To: djgpp-workers AT delorie DOT com
Reply-To: djgpp-workers AT delorie DOT com

Hey guys,
   Okay, I know this complex and maybe unnecessary since we have Bash,
but just humor me. I don't actually expect any of you to actually mess
with this, but I felt strongly that I should at least weakly attempt
to compile Dash and see how close we can get with it. Call it morbid
curiosity, boredom, whatever. And I don't know nearly enough, so
please pardon / ignore any obvious errors (although comments welcome).

Basically, with a few hacks it does compile but won't work. Same
obvious issues apply (no fork support, PATH needs conversion, etc). It
shouldn't be THAT hard to get this working. And it is much simpler and
smaller code than Bash and would be a nice alternative (to avoid Bash
bugs, perhaps).

Anyways, you may hate my style (I'm not too fond of it), but here goes
my lame .BAT / sed script. Have fun!       ;-)

=========================
@echo off
REM Attempting to build DASH 0.5.5.1 (Debian Ash) w/ DJGPP 2.04 on Vista
REM silly .BAT written by rugxulo _AT_ gmail _DOT_ com
REM
REM http://gondor.apana.org.au/~herbert/dash/
REM dash-0.5.5.1.tar.gz     14-Jan-2009 10:38       203K
REM http://gondor.apana.org.au/~herbert/dash/files/dash-0.5.5.1.tar.gz
REM
REM ----------------------------------------------------------------------
REM Known Problems:
REM * $PATH incorrectly set
REM   = manually "export PATH=/dev/env/DJDIR/bin:/dev/c/Armslurp/utils" etc.
REM * needs extension:  "ls.exe" instead of just "ls"
REM * doesn't work at all !! "Cannot fork" (not supported by DOS or DJGPP)
REM   = must change execve to something else (spawnve, djgpp_spawn, ???)
REM
REM TODO: Look at PDKSH 0.5.14 (OS/2 portion) and DJGPP's Bash 2.05
::   = http://gd.tuwien.ac.at/pc/dos/djgpp/beta/v2gnu/?fisel=bB
::   = http://www.cs.mun.ca/~michael/pdksh/
REM ----------------------------------------------------------------------

sh -c "./configure --disable-dependency-tracking CFLAGS='-g -O' -C"
sed -i -e "\,HAVE_GETRLIMIT 1,s,^,//," config.h
echo #define JOBS 0 >> config.h
echo #define _PATH_BSHELL "/bin/sh" >> config.h
echo #define _PATH_DEVNULL "/dev/null" >> config.h
sed -i -e "s,/tmp,/dev/env/DJDIR/tmp,g" src/mk*
for %%a in (exec jobs var histedit) do sed -i -e "\,#include
*.paths\.h.,s,^,//," src/%%a.c
sed -i -e "\,EWOULDBLOCK,s,\&\&,){//," src/input.c
sed -i -e "\,signo == SIGTSTP,{s,,0)){//,;n;s,^,//,;}" src/trap.c
sed -i -e "\,FILS[OT]CK,s,^,//," -e "\,S_ISSOCK,s,^,//," -e
"\,S_ISVTX,s,^,//," src/bltin/test.c
sed -i -e "\,WCOREDUMP(status),s,,0," -e "\,wait3,s,^,errno=ECHILD;
return -1; //," src/jobs.c
sed -i -e "\,SIGCHLD,s,^,//," src/trap.c
make
if exist src\dash.exe dir src\dash.exe
:: upx --best --lzma --all-filters src/dash.exe

REM EOF

- Raw text -


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