Eric Blake <ebb9@xxxxxxx> writes: > You should consider either renaming the macro, It's probably too late for that. > updating the macro to error out (or at least warn) if user tries to > name their auxiliary directory "aux" on the grounds that their > project will not port to cygwin, mingw32, or djgpp without changes. That would be reasonable, if someone wants to implement that. > Also, the "File System Conventions" section of the manual should be > updated OK, I installed this. Thanks. 2004-06-04 Paul Eggert <eggert@xxxxxxxxxxx> * doc/autoconf.texi (File System Conventions): Warn about names like "aux". Problem reported by Eric Blake. --- autoconf.texi.~1.821.~ 2004-06-04 10:36:40 -0700 +++ autoconf.texi 2004-06-04 13:35:05 -0700 @@ -9621,7 +9621,9 @@ esac @noindent will fail to properly detect absolute paths on those systems, because they can use a drivespec, and will usually use a backslash as directory -separator. The canonical way to check for absolute paths is: +separator. If you want to be portable to @acronym{DOS} variants (at the +price of rejecting valid but oddball Unix file names like @file{a:\b}), +you can check for absolute file names like this: @example case $foo_dir in @@ -9637,7 +9639,7 @@ Make sure you quote the brackets if appr first character (@pxref{Limitations of Builtins}). Also, because the colon is used as part of a drivespec, these systems don't -use it as path separator. When creating or accessing paths, use the +use it as path separator. When creating or accessing paths, you can use the @code{PATH_SEPARATOR} output variable instead. @command{configure} sets this to the appropriate value (@samp{:} or @samp{;}) when it starts up. @@ -9705,12 +9707,21 @@ possible to share file trees containing and @sc{lfn} environments, it also means the above problem applies there as well. -@item Invalid characters +@item Invalid characters (@sc{lfn}) Some characters are invalid in @acronym{DOS} filenames, and should therefore be avoided. In a @sc{lfn} environment, these are @samp{/}, @samp{\}, @samp{?}, @samp{*}, @samp{:}, @samp{<}, @samp{>}, @samp{|} and @samp{"}. In a @sc{sfn} environment, other characters are also invalid. These include @samp{+}, @samp{,}, @samp{[} and @samp{]}. + +@item Invalid names (@sc{lfn}) +Some @acronym{DOS} file names are reserved, and cause problems if you +try to use files with those names. These names include @file{CON}, +@file{AUX}, @file{COM1}, @file{COM2}, @file{COM3}, @file{COM4}, +@file{LPT1}, @file{LPT2}, @file{LPT3}, @file{NUL}, and @file{PRN}. +Remember that file names are case insensitive, so even names like +@file{aux/config.guess} are disallowed. + @end table @node Shell Substitutions _______________________________________________ Autoconf mailing list Autoconf@xxxxxxx http://lists.gnu.org/mailman/listinfo/autoconf