From: Gurusamy Sarathy Date: Sun, 1 Aug 1999 20:20:05 +0000 (+0000) Subject: move files around for s/cygwin32/cygwin/ renaming X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=commitdiff_plain;h=8babd21611073cf7ab71cbfaf139d06738ff3f27;p=p5sagit%2Fp5-mst-13.2.git move files around for s/cygwin32/cygwin/ renaming p4raw-id: //depot/perl@3851 --- diff --git a/MANIFEST b/MANIFEST index 36b6924..6dacdd6 100644 --- a/MANIFEST +++ b/MANIFEST @@ -35,7 +35,7 @@ README The Instructions README.amiga Notes about AmigaOS port README.apollo Notes about Apollo DomainOS port README.beos Notes about BeOS port -README.cygwin32 Notes about Cygwin32 port +README.cygwin Notes about Cygwin port README.dos Notes about dos/djgpp port README.epoc Notes about EPOC port README.hpux Notes about HP-UX port @@ -68,14 +68,9 @@ configure.com Configure-equivalent for VMS configure.gnu Crude emulation of GNU configure cop.h Control operator header cv.h Code value header -cygwin32/Makefile.SHs Shared library generation for Cygwin32 port -cygwin32/ld2.in ld wrapper template for Cygwin32 port -cygwin32/perlld.in dll generator template for Cygwin32 port -cygwin32/build-instructions.charles-wilson Cygwin32 porters notes -cygwin32/build-instructions.READFIRST Cygwin32 porters notes -cygwin32/build-instructions.steven-morlock2 Cygwin32 porters notes -cygwin32/build-instructions.sebastien-barre Cygwin32 porters notes -cygwin32/build-instructions.steven-morlock Cygwin32 porters notes +cygwin/Makefile.SHs Shared library generation for Cygwin port +cygwin/ld2.in ld wrapper template for Cygwin port +cygwin/perlld.in dll generator template for Cygwin port deb.c Debugging routines djgpp/config.over DOS/DJGPP port djgpp/configure.bat DOS/DJGPP port @@ -231,7 +226,7 @@ ext/DynaLoader/Makefile.PL Dynamic Loader makefile writer ext/DynaLoader/README Dynamic Loader notes and intro ext/DynaLoader/dl_aix.xs AIX implementation ext/DynaLoader/dl_beos.xs BeOS implementation -ext/DynaLoader/dl_cygwin32.xs Cygwin32 implementation +ext/DynaLoader/dl_cygwin.xs Cygwin implementation ext/DynaLoader/dl_dld.xs GNU dld style implementation ext/DynaLoader/dl_dlopen.xs BSD/SunOS4&5 dlopen() style implementation ext/DynaLoader/dl_hpux.xs HP-UX implementation @@ -419,7 +414,7 @@ hints/broken-db.msg Warning message for systems with broken DB library hints/bsdos.sh Hints for named architecture hints/convexos.sh Hints for named architecture hints/cxux.sh Hints for named architecture -hints/cygwin32.sh Hints for named architecture +hints/cygwin.sh Hints for named architecture hints/dcosx.sh Hints for named architecture hints/dec_osf.sh Hints for named architecture hints/dgux.sh Hints for named architecture diff --git a/README.cygwin32 b/README.cygwin similarity index 100% rename from README.cygwin32 rename to README.cygwin diff --git a/cygwin32/Makefile.SHs b/cygwin/Makefile.SHs similarity index 100% rename from cygwin32/Makefile.SHs rename to cygwin/Makefile.SHs diff --git a/cygwin32/ld2.in b/cygwin/ld2.in similarity index 100% rename from cygwin32/ld2.in rename to cygwin/ld2.in diff --git a/cygwin32/perlld.in b/cygwin/perlld.in similarity index 100% rename from cygwin32/perlld.in rename to cygwin/perlld.in diff --git a/cygwin32/build-instructions.READFIRST b/cygwin32/build-instructions.READFIRST deleted file mode 100644 index efbc760..0000000 --- a/cygwin32/build-instructions.READFIRST +++ /dev/null @@ -1,49 +0,0 @@ -This document is obsolete. Refer to README.cygwin32. However, if you want -to build a statically linked perl binary, then you applied the wrong patch. -You want perl5.005_03-static-patch, which will build "Pre-release 1" -according to the nomenclature in README.cygwin32. - -The perl source distribution is available from - http://www.cpan.org/src/index.html - -For the easiest build of perl under Cygwin, do the following: - -(1) read - *(a) README.cygwin from the perl source distribution - *(b) read build-instructions.charles-wilson - (b) read build-instructions.sebastien-barre - (c) read build-instructions.steven-morlock - (d) read build-instructions.steven-morlock2 - (e) read build-instructions.teun-burgers - -(2) prepare the source - (a) unpack perl source distribution in /usr/local/src - (b) copy perl5.005_03-static-patch into /usr/local/src/perl5.005_03/ - (c) cd /usr/local/src/perl5.005_03 - (d) chmod -R +w * - (e) patch -p1 < perl5.005_03-static-patch - -(3) get ready to build - (a) cp cygwin32/cw32imp.h . - (b) cp cygwin32/gcc2 . - (c) cp cygwin32/ld2 . - (d) cp cygwin32/perlgcc . - (e) cp cygwin32/perlld . - (f) cp gcc2 /usr/local/bin - (g) cp ld2 /usr/local/bin - (h) cp hints/cygwin32.sh config.sh - (i) sh Configure -d - (automatically does a make depend) - -(4) build and install - (b) make - (c) make test - (d) make install - -To customize, look around in the patchfile or ignore the patch and -follow the build-instructions.* directly. If you want to edit the paths -in the patchfile to reflect your system, search for "/usr/" within the -patchfile. - -* MUST read. - diff --git a/cygwin32/build-instructions.charles-wilson b/cygwin32/build-instructions.charles-wilson deleted file mode 100644 index 93c718f..0000000 --- a/cygwin32/build-instructions.charles-wilson +++ /dev/null @@ -1,113 +0,0 @@ -This document is obsolete. Refer to README.cygwin32. - -DATE: 13 May 99 - -Here are a few hints for building perl with cygwin: - -(1) There have been some problems compiling with the default compiler -installed with cygwin-b20.1. If you're reading this file, then you've -already applied perl5.005_03-static-patch. Some of the patches in -perl5.005_03-static-patch attempt to correct these problems, but it -would probably be a good idea to upgrade your compiler to egcs-1.1.1 -(or better) from Mumit Khan's website -- -http://www.xraylith.wisc.edu/~khan/software/gnu-win32/ - -(2) To avoid some failures when doing a "make test", use CYGWIN=ntea -while testing. However, see the Cygwin FAQ concerning the use of ntea -with FAT partitions. The tests that fail are those that deal with file -ownership and access. - -(3) Perl should build without trouble under text mounts or binary -mounts. However, some tests ("make test") may fail when using text -mounts. The tests that fail are those that involve using tie() to -attach a hashtable variable to a file. - -(4) There have been a few hints that some tests may also fail depending -on whether you're building, testing, and/or installing as a normal -user, or as a member of the Administrators group (NT only). However, -we're not sure about this one yet. - -(5) When compiling static modules for perl, don't mix modules compiled -under text mounts and modules compiled under binary mounts. - -(6) The sourcefiles in the tarball extract as "-r--r--r--" by default. -This may or may not cause problems, depending on your setup. To be safe, -I executed "chmod -R +w *". - -(7) To make life easier, you should download install-cygwin-b20.sh from -ftp://ftp.franken.de/pub/win32/develop/gnuwin32/cygwin/ - porters/Humblet_Pierre_A/ -and use it as your install "executable." Just follow the instructions -that are embedded as comments in that shell script. - -(8) There were a number of failed operations when installing. These -occurred in two cases: first, when trying to create man pages whose -names had ":" in them -- i.e. man/man3/Tie::Array.3, and second, -when copying the pod files from SRCDIR/pod/*.pod to -/usr/local/lib/perl5/perl5.00503/pod/. I'm not sure why, but I just -completed that operation by hand afterwards. - -RESULTS: -**************************************************** - -I built and tested as a normal user (not Administrator and not a member -of the Administrators group). However, I had to -'chown -R cwilson /usr/local/*' in order to avoid various NTisms. -(Previously, my /usr/local tree was owned by the Administrators GROUP, -and since I was building as a normal user, I couldn't install -completely. Why didn't I just switch to the Administrator account to -install? Well, that has its own share of problems: basically, the -Administrator couldn't write to those directories either - they were -owned by the Admin group, not the Admin user. And the permissions were --rw-r--r-- (or -r--r--r--), so group members weren't allowed write -access. Blame MS.) - -RESULTS: make test ------------------- - -Failed 4 test scripts out of 190, 92.63% okay. -u=2.143 s=4.897 cu=120.165 cs=159.697 scripts=180 tests=6430 - -RESULTS: ./perl harness ------------------------ -most things were "foo/bar............ok" with the following exceptions: - - -base/rs.............ok, 4/14 subtests skipped -op/groups...........skipping test on this platform -op/magic............FAILED test 23 - Failed 1/35 tests, 97.14% okay (-4 skipped tests: 30 okay, -85.71%) -op/stat.............ls: /dev: No such file or directory -FAILED tests 4, 35 - Failed 2/58 tests, 96.55% okay -op/taint............FAILED tests 1, 3, 31 - Failed 3/149 tests, 97.99% okay (-12 skipped tests: 134 okay, -89.93%) - (Also got the following popup message four times - "The dynamic -link - library cygwin1.dll could not be found in the specified path - F:\cygnus\cygwin-b20\usr\local\src\perl5.005_03\t;.; - E:\WINNT\System32;E:\WINNT\system;E:\WINNT;..") -lib/findbin.........FAILED test 1 - Failed 1/1 tests, 0.00% okay -lib/db-btree........skipping test on this platform -lib/db-hash.........skipping test on this platform -lib/db-recno........skipping test on this platform -lib/gdbm............skipping test on this platform -lib/ipc_sysv........skipping test on this platform -lib/ndbm............skipping test on this platform -lib/odbm............skipping test on this platform -lib/posix...........skipping test on this platform -lib/thread..........skipping test on this platform - -Failed Test Status Wstat Total Fail Failed List of failed ------------------------------------------------------------------------- -------- -lib/findbin.t 1 1 100.00% 1 -op/magic.t 35 1 2.86% 23 -op/stat.t 58 2 3.45% 4, 35 -op/taint.t 149 3 2.01% 1, 3, 31 -10 tests skipped, plus 20 subtests skipped. -Failed 4/190 test scripts, 97.89% okay. 7/6430 subtests failed, 99.89% -okay. diff --git a/cygwin32/build-instructions.sebastien-barre b/cygwin32/build-instructions.sebastien-barre deleted file mode 100644 index 70e0b15..0000000 --- a/cygwin32/build-instructions.sebastien-barre +++ /dev/null @@ -1,74 +0,0 @@ -This document is obsolete. Refer to README.cygwin32. - -perl5.005_03-static-patch implements all of the -suggestions below. Results in a static build, 93.85% -successful test on NT. - - -********************************** -Subject: Re: Compiling Perl under b20.1 - Date: Fri, 05 Mar 1999 16:41:52 +0100 - From: Sebastien Barre - To: Allan Peda - CC: Cygwin Mailing List - -At 22:04 04/03/99 -0500, Allan Peda wrote: - ->Has there been much success with this? I've done it with MSVC + nmake, ->but I'd get more of a thrill using cygwin. - -I did (5.005_002 static build, 91.4% successfull test). - -As many people from this list helped me, I'd glad to offer the same. - -Basically, - -*) Read the README.cywin32 - -*) Edit the hints/cygwin32.sh file to reflect your paths. - -Here are also a couple of settings I found useful when performing -automatic -build (copy hints/cygwin32.sh to config.sh, and do sh Configure -d) - -usedl='n' -i_stdarg='define' -i_varargs='undef' -osname='cygwin_nt-4.0' -osvers='20.1' -archname='cygwin32' -signal_t='int' -d_voidsig='define' -i_sysselct='undef' -signal_t='void' - -*) Browse Usenet archives (DejaNews), and find "HOWTO: Builiding Perl -under Win95/98 using Cygwin32 " -Steven Morlock -1998/12/21 -comp.lang.perl.misc - -*) Then apply this patch (Thanks to Todd Goodman) - -This is my change in Cwd.pm: ---- cwd.pm Fri Feb 26 21:52:42 1999 -+++ cwd.pm.orig Fri Jan 22 20:49:54 1999 -@@ -208,8 +208,6 @@ - my $start = @_ ? shift : '.'; - my($dotdots, $cwd, @pst, @cst, $dir, @tst); - -- return cwd() if ( $^O =~ /cygwin/ ); -- - unless (@cst = stat( $start )) - { - -And tell me (email) if it fails. - -______________________________________________________________ -Sebastien Barre http://www.hds.utc.fr/~barre/ - --- -Want to unsubscribe from this list? -Send a message to cygwin-unsubscribe@sourceware.cygnus.com - - diff --git a/cygwin32/build-instructions.steven-morlock b/cygwin32/build-instructions.steven-morlock deleted file mode 100644 index 70b7a55..0000000 --- a/cygwin32/build-instructions.steven-morlock +++ /dev/null @@ -1,247 +0,0 @@ -This document is obsolete. Refer to README.cygwin32. - -From comp.lang.perl.misc. perl5.005_03-static-patch -implements most of the suggestions below. My observations during the -build process are commented within the body of Mr. Morlock's message, -set off by ******CSW****** - - -************************************** -Subject: HOWTO: Builiding Perl under Win95/98 using Cygwin32 -Author: Steven Morlock -Date: 1998/12/21 -Forum: comp.lang.perl.misc - -If you have a desire to build Perl under Windows 95/98 using Cygnus' -Cygwin Win32 ports of the GNU development tools (Cygwin32) you might -get something out of my experience of building it. - -An advantage of the versions Perl built with Cygwin32 is that Cygwin32 -has a POSIX compatible library including support for the fork() -function. - -Steve - --- -Steven Morlock -Foliage Software Systems -aka The Nerd Farm -http://www.foliage.com -== - -These are the steps I took to build the latest development -version of Perl (5.005.53) under the Windows 95 & Window 98 -operating system using Cygnus' Cygwin Win32 ports of the GNU -development tools. - -The release of the Cygwin32 tools used was B20.1. These tools -can be found at: - - http://sourceware.cygnus.com/cygwin - -Install Cygwin32 as described on the Cygnus web site. Additionally -you should mount /bin as described in the following document: - - http://sourceware.cygnus.com/cygwin/cygwin-ug-net/setup-mount.html - -Note that the mount command shown in their example should appear on a -single line: - - mount C:/cygnus/cygwin-b20/H-i586-cygwin32/bin /bin - -You must run the described build process below under the Cygwin32 -'bash' shell. - -In the following will refer to the perl source/build -directory. will refer to the perl target/install directory. - -* Pre-build checklist: - - - I found that building Perl on a unmounted partition/drive other - than the root will fail. It appears that the double forward slash - that Cygwin32 uses to reference drives other than the root drive - (typically C:) gets converted to a single forward slash at several - points in the build process. I have not tried, but expect it would - work, to mount the non-root drive. This problem held true for both - the drive where the perl source were and the drive where the - Cygwin32 binaries where located. In the build described in these - notes the Perl source and Cygwin32 binaries were located on the - root drive. - - - Following the instructions in /README.cygwin32: -*******CSW******** -apply the patch, first -****************** - - + Copy the contents of the cygwin32 directory to - - + Edit the 'ld2' & 'gcc2' scripts to reflect the build path - - + Either move 'ld2' & 'gcc2' to a directory on your path or add - to you path. - - - Edit /hints/cygwin32.sh: - - + Add the following lines to the script: -*******CSW******** -the patch does this -****************** - i_stdarg='define' - i_varargs='undef' - - This change allows us to pick up the right version of - va_start(). Cygwin32 has both a signal and double parameter - versions floating around in their header files. - - + Remove support for dynamic linking. I found that all - DynaLoader'd extensions crashed during the running of the - test suite. Add or edit 'usedl' entry to read: -*******CSW******** -the patch does this -****************** - usedl='n' - - If there is enough push I will try to sort out the problems with - dynamic loading. I have made several unsuccessful attempts at - modifying /perlld to fix this problem. If you are - interested, write me. - - + Change the path to the Cygwin32 directories. This includes the - entries for 'usrinc', 'libpth', 'lddlflags', 'libc' and - 'usrinc'. -*******CSW******** -the patch does this ^ -****************** - - - Edit makedepend.SH. The original version of makedepend.SH produces - dependencies that include double backslashes. This can not be - processed by Cygwin32's 'make'. Apply the following modification - to makedepend.SH to correct these unfortunate filenames: -*******CSW******** -and this, as well \/ -****************** - -*** makedepend.SH.ORIG Wed Sep 23 09:51:56 1998 ---- makedepend.SH Mon Dec 21 09:27:30 1998 -*************** -*** 100,105 **** ---- 100,107 ---- - # for file in `cat /dev/null`; do - if [ "$osname" = uwin ]; then - uwinfix="-e s,\\\\\\\\,/,g -e s,\\([a-zA-Z]\\):/,/\\1/,g" -+ elif [ "$archname" = cygwin32 ]; then -+ uwinfix="-e s,\\\\\\\\,/,g" - else - uwinfix= - fi - - - Edit config_h.SH. The original version of config_h.SH has an bogus - #include that gets propagated into the dependency list in Makefile - create from the makedepend script. The Apply the following - modification to config_h.SH to work around this unfortunate - filename: -*******CSW******** -the patch does this, too -****************** - -*** config_h.SH.ORIG Wed Oct 28 23:16:10 1998 ---- config_h.SH Mon Dec 21 10:14:28 1998 -*************** -*** 1412,1416 **** - #endif - #if $cpp_stuff != 1 && $cpp_stuff != 42 -! #include "Bletch: How does this C preprocessor catenate tokens?" - #endif - ---- 1412,1416 ---- - #endif - #if $cpp_stuff != 1 && $cpp_stuff != 42 -! #include "#Bletch: How does this C preprocessor catenate tokens?" - #endif - - The real source of the problem appears that the 'make depend' in the - 'x2p' directory has problems. The following messages are generated - by that 'make depend': - - Finding dependencies for hash.o. - gcc2: Can't open gcc2 - ... [similar messages to above] - You don't seem to have a proper C preprocessor. Using grep - instead. - Updating GNUmakefile... - - So the grep is pulling the bogus #include from the file. The patch - turns the #include'd message into a comment. - - - Run the Configure in the directory as described in the - document /README.cygwin32 - - I receive the message "THIS PACKAGE SEEMS INCOMPLETE.". This does - not appear to be a problem. - - When presented with the list of handy defaults, select 'cygwin32' - - You can use the defaults for the remainder of the prompts. - -* Building: - - - Issue the command 'make' in the directory . - Cross fingers, wait and be patient. - -*******CSW******** -I didn't see this problem \/ -****************** - - I experience problems when building two files 'pp_sys.o' & - 'doio.o'. The build process will crash with a Windows dialog - during the build of these two files. The way I get by the problem - is to control-C the make and issue the build commands for the two - files by hand. In the Perl directory issue the following commands: - - `sh cflags libperl.a pp_sys.o` pp_sys.c - `sh cflags libperl.a doio.o` doio.c - - This appears to be a problem with Cygwin32's make. - - Hopefully if you follow the instructions above you will experience no - problems building Perl. - -* Testing: - - I found that the majority of the tests passed. There were no errors - that I thought particularly scary. There were several unexpected - results such as a couple 'A required .DLL file, CYGWIN1.DLL, was not - found' dialogs and 'Perl perform an illegal operation' dialogs. - -*******CSW******** -saw the "missing dll" during one test -****************** - - As long as I can run all my own scripts, things are fine by me... - - - Renamed or delete the file /t/lib/io_sock.t so it will not be - executed. This test hangs the system. I have made no attempts to - fix the problem. From the directory issue the following - command: - -*******CSW******** -I didn't do this, and saw no problems. -****************** - - mv t/lib/io_sock.t t/lib/io_sock.t.ORIG - - - Issue the command 'make test' in the directory . - Cross fingers, wait and be patient. - -* Installing: - - The install seems to work okay. There are problems when install the - man pages, but we don't need any stinkin' man pages, right? - -*******CSW******** -the man pages that didn't install were those that had "::" in their -filename. -****************** - - - Issue the command 'make install' in the directory . - -Configuration files available by request to perl@morlock.net diff --git a/cygwin32/build-instructions.steven-morlock2 b/cygwin32/build-instructions.steven-morlock2 deleted file mode 100644 index 82ff387..0000000 --- a/cygwin32/build-instructions.steven-morlock2 +++ /dev/null @@ -1,81 +0,0 @@ -This document is obsolete. Refer to README.cygwin32. - -This is an addendum to Steven Morlock's original post. -perl5.005_03-static-patch, contains the USEMYBINMODE correction described -below. - -***************************** -Subject: Re: HOWTO: Builiding Perl under Win95/98 using Cygwin32 -Author: Steven Morlock -Date: 1998/12/22 -Forum: comp.lang.perl.misc - -I realized that in my original post I left out a couple important -details. I'd like to correct that here. - -There is a need to address the issue of end of lines being CR/NL or -NL on the Windows platform. Cygwin32 by default converts NL to CR/NL -during file I/O by non Cygwin32-savvy applications. This means that -Perl, since it does not support 'binmode' for the Cygwin32 platform, -will not be able to read & write untranslated/binary files. There are -two methods of over coming this. The first is to mount the Cygwin32 -partitions in binary mode. The second is to enable binmode support -in Perl. In the original post I had mounted the partition as binary -and neglected to include that fact in the post. - -* Using a binary partition: - - Mount the Perl source & installation destination partitions in binary - mode. Refer to the Cygnus documentation on 'mount' for details: - - http://sourceware.cygnus.com/cygwin/cygwin-ug-net/mount.html - - On my system since everything was in the root partition I issued the - following commands from the bash shell: - - umount / - mount -b c:\\ / - - You must also get and install the gzip'd version of the Perl source - code archive. The zip'd version of the archive has all NL converted - to CR/NL pairs in all text files. So you should be downloading the - files ending in '.gz', not '.zip'. - -* Patching Perl to add Cygwin32 binmode support: - - For this method you can use either the gzip'd or zip'd version of the - Perl source archive. - - Apply the following patch to /perl.h: - -*** perl.h.ORIG Tue Dec 22 09:22:42 1998 ---- perl.h Tue Dec 22 09:43:10 1998 -*************** -*** 1480,1483 **** ---- 1480,1495 ---- - #endif - -+ #if defined(__CYGWIN32__) -+ /* USEMYBINMODE -+ * This symbol, if defined, indicates that the program should -+ * use the routine my_binmode(FILE *fp, char iotype) to insure -+ * that a file is in "binary" mode -- that is, that no translation -+ * of bytes occurs on read or write operations. -+ */ -+ #define USEMYBINMODE / **/ -+ #define my_binmode(fp, iotype) \ -+ (PerlLIO_setmode(PerlIO_fileno(fp), O_BINARY) != -1 ? -TRUE : NULL) -+ #endif -+ - #include "regexp.h" - #include "sv.h" - -Regards, -Steve - --- -Steven Morlock -Foliage Software Systems -aka The Nerd Farm -http://www.foliage.com diff --git a/ext/DynaLoader/dl_cygwin32.xs b/ext/DynaLoader/dl_cygwin.xs similarity index 100% rename from ext/DynaLoader/dl_cygwin32.xs rename to ext/DynaLoader/dl_cygwin.xs diff --git a/hints/cygwin32.sh b/hints/cygwin.sh similarity index 100% rename from hints/cygwin32.sh rename to hints/cygwin.sh