delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp/2000/08/15/01:50:37

Date: Tue, 15 Aug 2000 08:52:58 +0200
From: "Eli Zaretskii" <eliz AT is DOT elta DOT co DOT il>
Sender: halo1 AT zahav DOT net DOT il
To: zastai AT hotmail DOT com
Message-Id: <8011-Tue15Aug2000085258+0300-eliz@is.elta.co.il>
X-Mailer: Emacs 20.6 (via feedmail 8.2.emacs20_6 I) and Blat ver 1.8.5b
CC: djgpp AT delorie DOT com
In-reply-to: <zfXl5.49029$Fw6.1281521@afrodite.telenet-ops.be>
(zastai AT hotmail DOT com)
Subject: Re: crt0 globbing with crt0_preserve_case: broken or intended behaviour?
References: <zfXl5.49029$Fw6 DOT 1281521 AT afrodite DOT telenet-ops DOT be>
Reply-To: djgpp AT delorie DOT com
Errors-To: nobody AT delorie DOT com
X-Mailing-List: djgpp AT delorie DOT com
X-Unsubscribes-To: listserv AT delorie DOT com

> From: "Tim 'Zastai' Van Holder" <zastai AT hotmail DOT com>
> Newsgroups: comp.os.msdos.djgpp
> Date: Mon, 14 Aug 2000 18:54:23 GMT
> 
> I just noticed something odd when trying to run
>   rm -v /*._dd
> to remove the FILE*._DD files created by Norton Disk Doctor.
> rm refused, saying that '/*._dd' did not exist.
> 
> I use a patched version of fileutils-4.0, that sets the crt0 flags to
> include
> _CRT0_FLAG_PRESERVE_FILENAME_CASE, mostly for the benefit of
> ls (I use ls, not ls-lisp, in emacs, so I get correct file names (ie README,
> NEWS, etc). However, it seems that if that crt0 flag is set, the crt0
> globber will not expand arguments correctly (ie it needs *._DD to match
> the files, not *._dd). Since setting opendir_flags instead solved the
> problem (correct globbing and correct case), this isn't really a big issue,
> but I would like to know whether this behavious is intended or broken.

It is the intended behavior.

Using _CRT0_FLAG_PRESERVE_FILENAME_CASE, or the equivalent command
"set FNCASE=y" in the environment, means that you want true
case-sensitivity in directory-searching and globbing functions, like
on Unix.  If you try the above command on Unix, the shell will say "No
match".  This indeed surprises many Windows users, especially since
files moved from DOS are all-uppercase, that's why case-sensitivity
isn't the default.

In general, letter-case in file names is a mess in Windows, and it is
very hard to get it right.  We are trying to do our best in DJGPP, and
the experience shows that the defaults work reasonably well.  But we
aren't completely off the hook.  For example, I needed a dirty trick
in Groff 1.16 to get it to build, because there are files with names
like CI, PB, etc. that the Makefiles insist on finding in upper case,
and Make will say they aren't there unless you set FNCASE=y.

- Raw text -


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