diff --git a/winsup/doc/ChangeLog b/winsup/doc/ChangeLog index 4730937a4..1842421f9 100644 --- a/winsup/doc/ChangeLog +++ b/winsup/doc/ChangeLog @@ -1,3 +1,8 @@ +2009-02-03 Corinna Vinschen + + * pathnames.sgml: Rephrase the "Case sensitive filenames" chapter + slightly. + 2009-01-24 Corinna Vinschen * pathnames.sgml: Add requirement for world-readability of special diff --git a/winsup/doc/pathnames.sgml b/winsup/doc/pathnames.sgml index 7720ec8c9..d79a914c6 100644 --- a/winsup/doc/pathnames.sgml +++ b/winsup/doc/pathnames.sgml @@ -314,7 +314,7 @@ only differ by case, like Abc and aBc. While NTFS (and some remote filesystems) support case-sensitivity, the NT kernel starting with Windows XP does not support it by default. Rather, you have to tweak a registry setting -and reboot. For that reason, case-sensitivity is not supported by Cygwin, +and reboot. For that reason, case-sensitivity can not be supported by Cygwin, unless you change that registry value. If you really want case-sensitivity in Cygwin, you can switch it @@ -329,11 +329,12 @@ this registry value also on Windows NT4 and Windows 2000, which usually both don't know this registry key. If you want case-sensitivity on these systems, create that registry value and set it to 0. On these systems (and *only* on these systems) you don't have to reboot to bring it -into effect. +into effect, rather stopping all Cygwin processes and then restarting them +is sufficient. -Note that when installing Microsoft's Services For Unix (SFU), you're asked if +When installing Microsoft's Services For Unix (SFU), you're asked if you want to use case-sensitive filenames. If you answer "yes" at this point, the installer will change the aforementioned registry value to 0, too. So, if you have SFU installed, there's some chance that the registry value is already @@ -351,21 +352,20 @@ at your own risk. You have been warned! case-insensitivity for certain paths for better interoperability with native Win32 applications (even if it's just Windows Explorer). You can do this on a per-mount point base, by using the "posix=0" mount option in -/etc/fstab, or your /etc/fstab.d/$USER file. +/etc/fstab, or your /etc/fstab.d/$USER +file. -For a start, it might be best to switch the cygdrive path to -case-insensitivity, because the default Windows $PATH variable is not -always using the correct case by default. As a result, your shell will -claim that it can't find Windows commands like attrib -or net. Here's an example how you can switch the -cygdrive prefix to case-insensitivity: - - -Example mount point to enforce case-insensitivity on cygdrive paths - -none /cygdrive cygdrive binary,posix=0 0 0 - - +/cygdrive paths are case-insensitive by default. +The reason is that the native Windows %PATH% environment variable is not +always using the correct case for all paths in it. As a result, if you use +case-sensitivity on the /cygdrive prefix, your shell +might claim that it can't find Windows commands like attrib +or net. To ease the pain the /cygdrive +path is case-insensitive by default and you have to use the "posix=1" setting +explicitely in /etc/fstab or +/etc/fstab.d/$USER to switch it to case-sensitivity, +or you have to make sure that the native Win32 %PATH% environment variable +is using the correct case for all paths throughout. Note that mount points as well as device names and virtual paths like /proc are always case-sensitive! The only exception are