Xref: news2.mv.net comp.os.msdos.djgpp:3987 Newsgroups: comp.os.msdos.djgpp From: Scott Blachowicz Subject: Are "real" long filenames possible with DJGPP v2 (make)? Message-ID: Lines: 90 Sender: scott AT apple Reply-To: scott AT statsci DOT com Organization: Mathsoft, Inc (Data Analysis Products Div) Date: Sat, 18 May 1996 01:29:56 GMT To: djgpp AT delorie DOT com DJ-Gateway: from newsgroup comp.os.msdos.djgpp Hi- I've been looking for a GNU make that I can use on Win32 systems (Windoze 95 & NT) to build some software that I currently build on UNIX. I'd love to be able to use GNU make on all platforms, so here goes. Now, the files I'm building reside on a UNIX box that shares them using samba, so I can connect to them from the PC. The filenames are frequently longer than 8.3 and use mixed case letters in the names. I want to be able to see the full filename from Win95, but the 'make' program doesn't want to see them that way. I created a few files for a simple test case to demonstrate. With this makefile: SRCS := $(wildcard *.c) sources: @echo LFN = $(LFN) @echo SRCS = $(SRCS) I get these results. First, in a directory on a VFAT file system: D:\WIN95\TEMP\djgpp>make LFN = y SRCS = testfile.c D:\WIN95\TEMP\djgpp>set LFN=n D:\WIN95\TEMP\djgpp>make LFN = n SRCS = testfile.c thetestf.c D:\WIN95\TEMP\djgpp>dir Volume in drive D is STUFF Volume Serial Number is 2450-1BD5 Directory of D:\WIN95\TEMP\djgpp . 05-17-96 6:05p . .. 05-17-96 6:05p .. THETESTF C 82 05-17-96 6:05p TheTestFile.c MAKEFILE 79 05-17-96 6:08p makefile TESTFILE C 82 05-17-96 6:08p testfile.c 3 file(s) 243 bytes 2 dir(s) 35,676,160 bytes free The DOS/95 dir command can see the intended long file names, but not DJGPP make. Now, doing this on a Unix file system (connected to using Samba on the Unix box) gets worse... Z:\filexfer\pc\djgpp>dir Volume in drive Z is SCOTT Directory of Z:\filexfer\pc\djgpp . 05-17-96 6:16p . .. 05-17-96 6:13p .. THETE~TU C 82 05-17-96 6:05p TheTestFile.c makefile 79 05-17-96 6:08p makefile testfile c 82 05-17-96 6:08p testfile.c happened txt 653 05-17-96 6:13p happened.txt 4 file(s) 896 bytes 2 dir(s) 89,923,584 bytes free Z:\filexfer\pc\djgpp>make LFN = n SRCS = testfile.c thete~tu.c Z:\filexfer\pc\djgpp>set LFN=y Z:\filexfer\pc\djgpp>make LFN = y SRCS = testfile.c The samba server presents a "mangled" filename for the 8.3 name (as is typical for this sort of thing) to disambiguate filenames. It isn't realistic for me to set the samba option to do no name mangling (truncating instead) because I have a feeling there are some files that aren't unique in the first 8 chars... So, does anybody have any recommendations for a way to get DJGPP to work? Or for a GNU make that works under Windows 95 and NT that recognizes long filenames properly? I would give the gnu-win32 bash & make & so forth a try, but they're still in beta and, much as I hate to, I really need to be dealing with DOS filepaths, tools (compilers), etc. Thanx, -- Scott Blachowicz Ph: 206/283-8802x240 Mathsoft (Data Analysis Products Div) 1700 Westlake Ave N #500 scott AT statsci DOT com Seattle, WA USA 98109 Scott DOT Blachowicz AT seaslug DOT org