delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp/2012/05/22/05:15:12

X-Authentication-Warning: delorie.com: mail set sender to djgpp-bounces using -f
From: RayeR <glaux AT centrum DOT cz>
Newsgroups: comp.os.msdos.djgpp
Subject: How to change SFN filename case in crt0 flags - is it possible
(FAT32, WinXP)
Date: Tue, 22 May 2012 01:56:11 -0700 (PDT)
Organization: http://groups.google.com
Lines: 23
Message-ID: <d47f1086-d5a0-425e-8209-25de81a9bfaa@m10g2000vbn.googlegroups.com>
NNTP-Posting-Host: 78.45.168.2
Mime-Version: 1.0
X-Trace: posting.google.com 1337677418 23185 127.0.0.1 (22 May 2012 09:03:38 GMT)
X-Complaints-To: groups-abuse AT google DOT com
NNTP-Posting-Date: Tue, 22 May 2012 09:03:38 +0000 (UTC)
Complaints-To: groups-abuse AT google DOT com
Injection-Info: m10g2000vbn.googlegroups.com; posting-host=78.45.168.2; posting-account=Q0wMHAoAAADjYrghh94FTf6YnbpTqZgp
User-Agent: G2/1.0
X-HTTP-UserAgent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.1.19)
Gecko/20110420 SeaMonkey/2.0.14,gzip(gfe)
Bytes: 2293
To: djgpp AT delorie DOT com
DJ-Gateway: from newsgroup comp.os.msdos.djgpp
Reply-To: djgpp AT delorie DOT com

Hi,
when compiling MuPDF 0.9 I tracked the folowing issue related to SFN/
LFN. Authors of makefile building tools are relying on preserve of
filename case - 100% case sensitivity when they use cmapdump.exe tool
that generate some charmaps from multiple files to single file
containing array constants names by files taking a * wildcard. Other
source file is linked to this names and as you know the C is 100% case
sensitive and here you see the birth of evil.

As we know, when filename match the rules of SFN on FAT32 it doesn't
need to have a LFN entry. Out beloved M$ cannot decide itself how to
handle it so they use uppercase on Win9X system and lowercase on WinNT
systems to make us have a fun. I need to enforce uppercase behavior.
It seems to work this way for Mingw console programs but not for DOS
LFN aware programs. Is there some flag in crt0 for functions parsing
argv[] to uppercase SFNs without LFN entry?
Example, I have this files:
"78-EUC-H"           (SFN)
"78ms-RKSJ-H"    (LFN)
"Roman"                (SFN+LFN)
And I want to get in argv[] this names with unchanged case (instead of
I'm getting "78-euc-h")
Is it possible to solve it on both Win9x and NT systems?

- Raw text -


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