Am 19.07.2014 12:43, schrieb Rugxulo: > Hi, > > On Sat, Jul 19, 2014 at 12:00 AM, Mateusz Viste <mate...@viste.fr> wrote: >> I think this problem goes beyond "path separators". As I understand it, any >> argument including a slash character >> will get exploded. So yes, this might be used as path separator, but not >> only. For eg. sed expects slash >> delimited values inside a single argument. > sed can use other delimiters, if slash is too prohibitive. Sometimes > that makes things easier to read and write. > > Just for silly example (tested under Cygwin): > > echo $PATH | sed -e '/.*\(\/cygdrive\/c\/rugxulo\/watcom19\/BINNT\).*/s//\1/' > > ... vs. ... > > echo $PATH | sed -e '\,.*\(/cygdrive/c/rugxulo/watcom19/BINNT\).*,s,,\1,' > > > Oops. Or did you mean that this bug in FreeCOM might break sed > invocations? I doubt it, the double quotes after -e probably protect > it from munging. No, this is not a sed issue. The issue I reported concerns the treating of the arguments passed to a batch file by FreeCom. As shown by the small sample batch file, the behavior of the current version of FreeCom is different from the behavior of command.com and 4dos.com. I have made a clean installation of FreeDOS 1.1 and I am not aware of having break something during installation. But anyway this is not a problem to me anymore because I have replaced FreeCom with 4dos.
>> @Juan - you also write about other "different issues and limitations" - >> could you please post us a list? >> Even if FreeCom is semi-maintained nowadays, it would still be interesting >> to know what kind of quirks you found there.. > The only one I'm aware of is the "read from NUL" bug, which Jeremy > already fixed in his unofficial Git snapshots. (Yes, for some reason, > DJGPP insists on reading from that, heh.) > > http://www.delorie.com/djgpp/mail-archives/browse.cgi?p=djgpp-workers/2014/03/28/16:38:35 > To clarify the issue. I was playing with the idea to release an .iso image containing a full DJGPP installation for 2.03, 2.04 and with libc.a build from DJGPP's CVS repository. The goal here was to have a reference DJGPP installation so that users that may have difficulties building some projects can try this installation. For me the question arised if this image should be bootable or not. If bootable then the only possible OS that would make sense would be FreeDOS. It was clear to me that if the image would be bootable then certainly some users would ask if it would be possible to compile their gnu projects on FreeDOS. Most of the user nowadays have Win8 instead as WinXP as default OS. So it becomes necessary to test if FreeDOS can be used as OS to configure and compile projects of such complexity. Until now I have used MSDOS 6.22 instead of FreeDOS. If I get it working on MSDOS I try FreeDOS. If it does not work with MSDOS I assume that it also does not work with FreeDOS. Until now I was not able to compile any DJGPP port of GNU projects except for ed-110s.zip. The reason for this is that it is probably the last GNU project that does not use the AUTOCONF/AUTOMAKE generated configure scripts. I was not able to configure any of the contemporaneous GNU programs like m4, bison or grep. Trying to configure and compile GNU programs on FreeDOS have revealed at least the following issues: 1) The "read from NUL" bug. Yes this is a bug due to 2 reasons. a) If a command like this: program.exe < NUL is not forbidden it is allowed. AFAIK, microsoft has not published any documentation that states that reading from NUL is not defined. b) If it works with microsoft dos kernels it should work with FreeDOS kernels too or they are not really full compatible. Of course, how compatible the FreeDOS kernel shall be is a design decision that must be taken by the maintainers. Last but not least it is not DJGPP that insists on reading from NUL. DJGPP is only used to run script/programs developed for posix. Please note I am very happy to know that this issue has already been fixed but as a newbie to FreeDOS is it of no practical use to me to know that the fix is in some local GIT repository. As a newbie or average FreeDOS user I will certainly not install one compiler more (aka OW) and try to become familiar with a compiler I have never used in my life only to compile a fixed kernel. I would expect a pointer to a zip file that contains a fixed kernel so I can replace the broken one. 2) Long file name support. LFN support is an absolute must-have for contemporaneous software development. The times of 8+3 file name restrictions are long gone. Of course, I am aware of the existence of DOSLFN-like TSRs and I have installed DOSLFN 0.41c on my MSDOS 6.22 machine and also on the FreeDOS installation. Neither less this is of no practical use except for the fact the TSR creates LFNs. IMHO, if the LFN support would be integrated into the kernel it would become much faster and thus of real practical use. For the checks I am using my Thinkpad T60 with MSDOS 6.22 installed on a 2G partition formatted with FAT. On another partition WinXP SP3 is installed (NTFS). I have unzipped on both operating systems the DJGPP port of binutils (aka bnu224sr2.zip). On WinXP it tooks 2:22 minutes and on MSDOS it tooks 52:30 minutes. MSDOS with DOSLFN is approximately 25 times slower than WinXP. IIRC Win98SE is even a little bit faster than WinXP. If the handling of LFN on FreeDOS does not become as fast as on WinXP and/or Win98SE, FreeDOS is of no _practical_ use for porting purposes of GNU software to DOS. Please note that I am not claiming that MSDOS/FreeDOS together with DOSLFN is of no use but it is of no _practical_ use for my porting purposes. Compiling on WinXP tooks 07:45 minutes. If compiling on MSDOS with LFN support is also at least a factor of 25 times slower then it would not make to much sense to do it if there is an alternative available like Win98SE or WinXP. A software package like latest DJGPP port of GCC takes approximately 9 hours to compile on WinXP. It becomes clear that from a practical point of view such a package cannot be compiled on FreeDOS using DOSLFN. On MSDOS I was not able neither to configure nor to compile the binutils port. I am still investigation all the reasons and I do not claim that FreeDOS is the reason for the failure. It must be noted that DJGPP 2.04 and all the code stored in the repository has been developed for NTVDM and _not_ for DOS. It was clear to all DJGPP developers in those days when Win2K and WinXP rised that DOS was dead and that if DJGPP should survive the primary target had to be NTVDM and no longer pure DOS. This design decision may have introduced incompatibilities that are detected now when some one tries to use pure DOS instead of NTVDM. I am aware that introducing LFN support into the kernel may break backward compatibility with MSDOS. But in that case the backward compatibility has already been broken long time ago by the introduction of FAT32 support. The LFN support could always be disabled by default and enabled explicitly by the user by some setting in config.sys. 3) The "../foo/bar/." batch file option issue when using FreeCom. This issue seem already have been solved either by using 4DOS or with the by Jeremy fixed FreeCom. 4) The AUTOTOOLS generated configure scripts try to execute bash and the script like this: exec /dev/c/djgpp-2.03/bin/sh ../configure --disable-dependency-tracking --disable-nls --enable-install-bfd --enable-install-libiberty --with-mpc=/dev/env/DJDIR --with-mpfr=/dev/env/DJDIR --with-gmp=/dev/env/DJDIR --enable-build-warnings=-Wimplicit,-Wcomment,-Wformat,-Wparentheses,-Wpointer-arith This line fails for DJGPP 2.03 and 2.04. I still have not figured out what is failing here. On Win98SE and WinXP this works flawlessly. As can be seen the shell script to execute have become increasingly complex over the years and DJGPP has been targeted to execute them on Windows versions but not on pure DOS. Although I will continue investigating all these and future issues I have conclude that it will be very unlikely that FreeDOS can be recommended as a substitute for WinXP and/or Win98SE to porting contemporary GNU software to DOS. Using a cross-compiler will be the more efficient approach although debugging will become difficult. Regards, Juan M. Guerrero P.S.: last but not least, due to my limited english skills some sentences may sound harsh but the is no offending intention. ------------------------------------------------------------------------------ Want fast and easy access to all the code in your enterprise? Index and search up to 200,000 lines of code with a free copy of Black Duck Code Sight - the same software that powers the world's largest code search on Ohloh, the Black Duck Open Hub! Try it now. http://p.sf.net/sfu/bds _______________________________________________ Freedos-devel mailing list Freedos-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/freedos-devel