=item * C<-lcygipc> (C<use IPC::SysV>)
-A port of SysV IPC is available for Cygwin. It has not been extensively
-tested. In particular, C<d_semctl_semun> does not configure properly
-because the configure test fails and on Win9x the shm*() functions hang.
+A port of SysV IPC is available for Cygwin.
+
+NOTE: This has B<not> been extensively tested. In particular,
+C<d_semctl_semun> is undefined because it fails a configure test and on
+Win9x the shm*() functions seem to hang.
=back
=head2 Configure-time Options
-The F<INSTALL> document describes several Configure-time options.
-Some of these will work with Cygwin, others are not yet possible. Also,
-some of these are experimental.
+The F<INSTALL> document describes several Configure-time options. Some of
+these will work with Cygwin, others are not yet possible. Also, some of
+these are experimental. You can either select an option when Configure
+prompts you or you can define (undefine) symbols on the command line.
=over 4
=item * C<-Uusedl>
-If you want to force Perl to be compiled statically, you can either
-choose this when Configure prompts you or you can use the Configure
-command line option.
+Undefining this symbol forces Perl to be compiled statically.
=item * C<-Uusemymalloc>
By default Perl uses the malloc() included with the Perl source. If you
-want to force Perl to build with the system malloc(), you can either
-choose this when Configure prompts you or you can use the Configure
-command line option.
+want to force Perl to build with the system malloc() undefine this symbol.
-=item * C<-Dusemultiplicty>
+=item * C<-Dusemultiplicity>
Multiplicity is required when embedding Perl in a C program and using
more than one interpreter instance. This works with the Cygwin port.
The PerlIO abstraction works with the Cygwin port.
-=item * C<-Duse64bits>
+=item * C<-Duse64bitint>
I<gcc> supports 64-bit integers. However, several additional long long
functions are necessary to use them within Perl (I<{strtol,strtoul}l>).
=item * C<-Duselargefiles>
-Although Win32 supports large files, Cygwin currently uses 32-bit ints
+Although Win32 supports large files, Cygwin currently uses 32-bit integers
for internal size and position calculations.
=back
You should keep the recommended value.
+=item * dlsym
+
+I<ld2> is needed to build dynamic libraries, but it does not exist
+when dlsym() checking occurs (it is not created until `C<make>' runs).
+You will see the following message:
+
+ Checking whether your dlsym() needs a leading underscore ...
+ I can't compile and run the test program.
+ I'm guessing that dlsym doesn't need a leading underscore.
+
+Since the guess is correct, this is not a problem.
+
=item * Win9x and d_eofnblk
Win9x does not correctly report C<EOF> with a non-blocking read on a
This is correct.
+=item * Compiler/Preprocessor defines
+
+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
+
+This failure does not seem to cause any problems.
+
=back
=head1 MAKE
=item Documentation
- INSTALL
+ INSTALL README.cygwin
Changes Changes5.005 Changes5.004
- AUTHORS MAINTAIN MANIFEST
- README.cygwin README.win32
+ AUTHORS MAINTAIN MANIFEST README.win32
pod/perl.pod pod/perlfaq3.pod pod/perlhist.pod pod/perlmodlib.pod
pod/perlport.pod pod/perltoc.pod pod/perl5004delta.pod
ext/NDBM_File/hints/cygwin.pl
ext/ODBM_File/hints/cygwin.pl
hints/cygwin.sh
- Porting/patchls - cygwin in port list
- Makefile.SH - linklibperl
- makedepend.SH - uwinfix
Configure - help finding hints from uname,
shared libperl required for dynamic loading
+ Makefile.SH - linklibperl
+ Porting/patchls - cygwin in port list
installman - man pages with :: translated to .
installperl - install dll/ld2/perlld, install to pods
+ makedepend.SH - uwinfix
=item Tests
=item Compiled Perl Source
- cygwin/cygwin.c - os_extras (getcwd)
- doio.c - win9x can not rename a file when it is open
EXTERN.h - __declspec(dllimport)
XSUB.h - __declspec(dllexport)
+ cygwin/cygwin.c - os_extras (getcwd)
+ perl.c - os_extras
perl.h - binmode
+ doio.c - win9x can not rename a file when it is open
+ pp_sys.c - do not define h_errno
mg.c - environ WORKAROUND
- util.c - environ WORKAROUND
unixish.h - environ WORKAROUND
+ util.c - environ WORKAROUND
=item Compiled Module Source
=item Perl Modules/Scripts
- lib/perl5db.pl - use stdin not /dev/tty
- utils/perlcc.PL - DynaLoader.a in compile, -DUSEIMPORTLIB
- utils/perldoc.PL - version comment
- lib/File/Spec/Unix.pm - preserve //unc
+ lib/Cwd.pm - hook to internal Cwd::cwd
lib/ExtUtils/MakeMaker.pm
- require MM_Cygwin.pm
lib/ExtUtils/MM_Cygwin.pm
- canonpath, cflags, manifypods, perl_archive
- lib/Cwd.pm - `pwd`
+ lib/File/Spec/Unix.pm - preserve //unc
+ lib/perl5db.pl - use stdin not /dev/tty
+ utils/perlcc.PL - DynaLoader.a in compile, -DUSEIMPORTLIB
+ utils/perldoc.PL - version comment
=back
=head1 HISTORY
-Last updated: 24 February 2000
+Last updated: 1 March 2000