Date: Thu, 5 Feb 1998 17:28:14 +0200 (IST) From: Eli Zaretskii To: Trond Erik Bones cc: djgpp AT delorie DOT com Subject: Re: Long file names in DOS ? In-Reply-To: <6bcess$sem$1@pravda.tisip.no> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Precedence: bulk On Thu, 5 Feb 1998, Trond Erik Bones wrote: > I have a few makefiles written for UNIX which consists of long file > names(longer than 8.3). > > Do I need to change alle file names in my makefile so that GCC and Make(for > Windows) understands them ? In general, you don't. DOS silently truncates the names which exceed 8+3 limits, so when the Makefile mentions e.g. "ALongFileName.Extension", a file whose name was truncated to "alongfil.ext" will fit the bill. However, there are several gotchas when you are trying to build a package whose sources originated on Unix: 1) Some file names, such as .gdbinit and Makefile.in.in, are illegal on DOS, even when truncated. You will need to change these and edit the Makefile(s) to reflect the changes. 2) When two or more file names yield the same 8+3 name after truncation, they will overwrite each other and cause bugs. You will need to rename some of these files to prevent these clashes. The best way to avoid most of these problems is to use the DJTAR program, which comes with the djdev201.zip distribution, to unpack the sources (assuming they come in .tar, .tar.Z, or .tar.gz format). DJTAR will rename some illegal names automatically, and will prompt you to supply alternate names when some file would overwrite another one because of truncation. (It is still up to you to edit the Makefile to reflect the changes done by DJTAR.)