X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=README.cygwin;h=9718bb5e06a96bf8c2cdff163e654335d0be58ab;hb=3e148164f5f2c2b3bff3571c0083097006822b57;hp=2a95ab97c33c69f1dd48575943e1214d9ea7ac39;hpb=7906debc4b99f108310cdade6e486754c15481e7;p=p5sagit%2Fp5-mst-13.2.git diff --git a/README.cygwin b/README.cygwin index 2a95ab9..9718bb5 100644 --- a/README.cygwin +++ b/README.cygwin @@ -27,20 +27,19 @@ platforms. They run thanks to the Cygwin library which provides the UNIX system calls and environment these programs expect. More information about this project can be found at: - http://sourceware.cygnus.com/cygwin/ + http://sources.redhat.com/cygwin/ A recent net or commercial release of Cygwin is required. -At the time this document was last updated, Cygwin 1.1.2 was current. +At the time this document was last updated, Cygwin 1.1.4 was current. B At this point, minimal effort has been made to provide compatibility with old (beta) Cygwin releases. The focus has been to provide a high quality release and not worry about working around old -Cygwin bugs. If you wish to use Perl with Cygwin B20.1 or earlier, -consider using perl5.005_03, which is available in source and binary -form at C or on the Cygwin CD. If there -is significant demand, a patch kit can be developed to port back to -earlier Cygwin versions. +bugs. If you wish to use Perl with Cygwin B20.1 or earlier, consider +using perl5.005_03, which is available in source and binary form at +C. If there is significant demand, +a patch kit can be developed to port back to earlier Cygwin versions. =head2 Cygwin Configuration @@ -49,11 +48,11 @@ that Perl builds cleanly. These changes are B required for normal Perl usage. B The binaries that are built will run on all Win32 versions. -They do not depend on your host system (Win9x, WinNT) or your Cygwin -configuration (I, I, binary/text mounts). The only -dependencies come from hard-coded pathnames like C. However, -your host system and Cygwin configuration will affect Perl's runtime -behavior (see L). +They do not depend on your host system (Win9x/WinME, WinNT/Win2K) +or your Cygwin configuration (I, I, binary/text mounts). +The only dependencies come from hard-coded pathnames like C. +However, your host system and Cygwin configuration will affect Perl's +runtime behavior (see L). =over 4 @@ -72,7 +71,7 @@ Configure will B prompt you to install I pages. On WinNT with either the I or I C settings, directory and file permissions may not be set correctly. Since the build process -creates files and directories, to be safe you may want to run a `C' on the entire Perl source tree. Also, it is a well known WinNT "feature" that files created by a login @@ -125,7 +124,10 @@ C. =item * C<-lcrypt> -The crypt libraries in GNU libc have been ported to Cygwin. +The crypt package distributed with Cygwin is a Linux compatible 56-bit +DES crypt port by Corinna Vinschen. + +Alternatively, the crypt libraries in GNU libc have been ported to Cygwin. The DES based Ultra Fast Crypt port was done by Alexey Truhan: @@ -138,22 +140,21 @@ The MD5 port was done by Andy Piper: ftp://ftp.franken.de/pub/win32/develop/gnuwin32/cygwin/porters/Okhapkin_Sergey/libcrypt.tgz -There is also a Linux compatible 56 bit DES crypt port by Corinna -Vinschen: - - ftp://ftp.franken.de/pub/win32/develop/gnuwin32/cygwin/porters/Vinschen_Corinna/V1.1.1/crypt-1.0.tar.gz - =item * C<-lgdbm> (C) GDBM is available for Cygwin. GDBM's ndbm/dbm compatibility feature also makes C and C possible (although they add little extra value). +NOTE: The ndbm/dbm emulations only completely work on NTFS partitions. + =item * C<-ldb> (C) BerkeleyDB is available for Cygwin. Some details can be found in F. +NOTE: The BerkeleyDB library only completely works on NTFS partitions. + =item * C<-lcygipc> (C) A port of SysV IPC is available for Cygwin. @@ -204,7 +205,7 @@ These are B yet available with Cygwin. I supports long doubles (12 bytes). However, several additional long double math functions are necessary to use them within Perl -(I<{atan2,cos,exp,floor,fmod,frexp,log,modf,pow,sin,sqrt}l,strtold>). +(I<{atan2,cos,exp,floor,fmod,frexp,isnan,log,modf,pow,sin,sqrt}l,strtold>). These are B yet available with Cygwin. =item * C<-Dusethreads> @@ -224,18 +225,6 @@ You may see some messages during Configure that seem suspicious. =over 4 -=item * Whoa There - -Cygwin does not yet implement chroot() functionality, but has a stub -function that returns C. You will see a message when Configure -detects that its guess conflicts with the hint file. - - *** WHOA THERE!!! *** - The recommended value for $d_chroot on this machine was "undef"! - Keep the recommended value? [y] - -You should keep the recommended value. - =item * I I is needed to build dynamic libraries, but it does not exist @@ -278,7 +267,7 @@ The following error occurs because of the Cygwin C<#define> of C<_LONG_DOUBLE>: Guessing which symbols your C compiler and preprocessor define... - try.c:3847: parse error + try.c:: parse error This failure does not seem to cause any problems. @@ -297,8 +286,8 @@ Warnings like these are normal: warning: overriding commands for target warning: ignoring old commands for target - Warning: no export definition file provided - dllwrap will create one, but may not be what you want + dllwrap: no export definition file provided + dllwrap: creating one, but that may not be what you want =head2 ld2 @@ -326,8 +315,8 @@ running as `C<./perl harness>'. Test results vary depending on your host system and your Cygwin configuration. If a test can pass in some Cygwin setup, it is always attempted and explainable test failures are documented. It is possible -that Perl will pass all the tests, but it is more likely that some tests -will fail for one of these reasons. +for Perl to pass all the tests, but it is more likely that some tests +will fail for one of the reasons listed below. =head2 File Permissions @@ -360,7 +349,7 @@ these options, these tests will fail: FAT partitions do not support hard links (whereas NTFS does), in which case Cygwin implements link() by copying the file. On remote (network) drives Cygwin's stat() always sets C to 1, so the link count -for remote directories and files is not available. In both cases, +for remote directories and files is not available. In either case, these tests will fail: Failed Test List of failed @@ -389,7 +378,7 @@ the system with messages like: A required .DLL file, CYGWIN1.DLL, was not found WinNT - perl.exe or sh.exe - Unable to Locate DLL + perl.exe - Unable to Locate DLL The dynamic link library cygwin1.dll could not be found in the specified path ... @@ -404,7 +393,7 @@ will fail: Alternatively, you can copy F into the directory where the tests run: - cp `type -p cygwin1.dll` t + cp /bin/cygwin1.dll t or one of the Windows system directories (although, this is B recommended). @@ -439,9 +428,9 @@ printable characters except these: : * ? " < > | -File names are case insensitive, but case preserving. A pathname -that contains a backslash is a Win32 pathname (and not subject to the -translations applied to POSIX style pathnames). +File names are case insensitive, but case preserving. A pathname that +contains a backslash or drive letter is a Win32 pathname (and not subject +to the translations applied to POSIX style pathnames). =item * Text/Binary @@ -480,6 +469,9 @@ returns C. Win9x can not rename() an open file (although WinNT can). +The Cygwin chroot() implementation has holes (it can not restrict file +access by native Win32 programs). + =back =head1 INSTALL @@ -509,10 +501,11 @@ be kept as clean as possible. =item Documentation INSTALL README.cygwin - Changes Changes5.005 Changes5.004 + Changes Changes5.005 Changes5.004 Changes5.6 AUTHORS MAINTAIN MANIFEST README.win32 - pod/perl.pod pod/perlfaq3.pod pod/perlhist.pod pod/perlmodlib.pod - pod/perlport.pod pod/perltoc.pod pod/perldelta.pod pod/perl5004delta.pod + pod/buildtoc.PL pod/perl.pod pod/perl5004delta.pod pod/perl56delta.pod + pod/perlfaq3.pod pod/perlhist.pod pod/perlmodlib.pod pod/perlport.pod + pod/perltoc.pod =item Build, Configure, Make, Install @@ -534,6 +527,7 @@ be kept as clean as possible. =item Tests t/io/tell.t - binmode + t/lib/b.t - ignore Cwd from os_extras t/lib/glob-basic.t - Win32 directory list access differs from read mode t/op/magic.t - $^X/symlink WORKAROUND, s/.exe// t/op/stat.t - no /dev, skip Win32 ftCreationTime quirk @@ -570,8 +564,8 @@ be kept as clean as possible. - canonpath, cflags, manifypods, perl_archive lib/File/Find.pm - on remote drives stat() always sets st_nlink to 1 lib/File/Spec/Unix.pm - preserve //unc + lib/File/Temp.pm - no directory sticky bit lib/perl5db.pl - use stdin not /dev/tty - utils/perlcc.PL - DynaLoader.a in compile, -DUSEIMPORTLIB utils/perldoc.PL - version comment =back @@ -580,12 +574,17 @@ be kept as clean as possible. When I starts, it warns about overriding commands for F. -`C' does not remove library F<.def> and F<.exe.stackdump> +`C' does not remove library F<.def> or F<.exe.stackdump> files. The I script contains references to the source directory. You should change these to $installbin after `C'. +Support for swapping real and effective user and group IDs is incomplete. +On WinNT Cygwin provides setuid(), seteuid(), setgid() and setegid(). +However, additional Cygwin calls for manipulating WinNT access tokens +and security contexts are required. + =head1 AUTHORS Charles Wilson , @@ -597,4 +596,4 @@ Teun Burgers . =head1 HISTORY -Last updated: 20 June 2000 +Last updated: 15 August 2000