[PATCH] Re: Proposal to remove support for MachTen
[email protected] (Dominic Dunlop) Wed, 10 Mar 2004 18:27:23 +0100
| Newsgroups | perl.perl5.porters,perl.perl5.build |
|---|---|
| Message-ID | <[email protected]> |
[Originally sent to all addressees except p5p on 15 February. It seems to have fallen down a hole -- perhaps because I failed to mark it [PATCH], so here it is again. Tested against Machten on bleadperl, perl-5.6.2, perl-5.8.3, and perl5.005_04-RC2 (where it applies partially and fuzzily, but well enough to work); tested against Mac OS X on bleadperl.] On 11 Feb 2004, at 21:31, Andrew Dougherty wrote: > On Wed, 11 Feb 2004, H.Merijn Brand wrote: > >> On Wed 11 Feb 2004 15:54, Dominic Dunlop <[email protected]> wrote: > > [ giving up on MachTen ] > >> I propose the following: >> >> 1. Leave Configure as it is, this also to simplify integration >> to older versions, as Configure is still shared amongst all OK. Untouched. > > Yes, but certainly do put some comments in the appropriate unit > (OldConfig.U, I think, offhand.) That's up to you. > >> 2. Make hints/machten.sh exit with a warning for any perl >> higher than 5.8.x. This exit will have the same effect as >> you intended with the change to Configure: it won't build > > Or maybe don't even bother, though certainly remove or reword > Dominic's promise to help fix any problems! > > After all, there's a difference between not supporting something and > going out of our way to un-support it. Done. See patch below for hints/machten.sh and README.machten. It applies against perl-current and 5.6.3. I have not checked any other distributions. --- hints/machten.sh~ Wed Dec 11 10:23:25 2002 +++ hints/machten.sh Sun Feb 15 14:45:45 2004 @@ -1,7 +1,14 @@ #! /bin/bash # machten.sh # This is for MachTen 4.1.4. It might work on other versions and variants -# too. If it doesn't, tell me, and I'll try to fix it -- [email protected] +# too. MachTen is now obsolete, lacks many features expected in modern UNIX +# implementations, and suffers from a number of bugs which are likely never +# to be fixed. This means that, in the absence of extensive work on +# this file and on the perl source code, versions of perl later than 5.6.x +# cannot successfully be built on MachTen. This file enforces this +# restriction. Should you wish to port a later version of perl to MachTen, +# feel free to contact me for pointers. +# -- Dominic Dunlop <[email protected]> 040213 # # Users of earlier MachTen versions might need a fixed tr from ftp.tenon.com. # This should be described in the MachTen release notes. @@ -15,6 +22,8 @@ # Martijn Koster <[email protected]> # Richard Yeh <[email protected]> # +# Prevent building of perls later than 5.6.x, stating why -- see above. +# -- Dominic Dunlop <[email protected]> 040213 # Deny system's false claims to support mmap() and munmap(); note # also that Sys V IPC (re)disabled by jhi due to continuing inadequacy # -- Dominic Dunlop <[email protected]> 001111 @@ -44,8 +53,21 @@ # Do not use perl's malloc; SysV IPC OK -- Neil Cutcliffe, Tenon 961030 # File::Find's use of link count disabled by Dominic Dunlop 960528 # Perl's use of sigsetjmp etc. disabled by Dominic Dunlop 960521 -# -# Comments, questions, and improvements welcome! + +# Assume that PERL_REVISON in patchlevel.h is 5. +# Should you want to try building perl-5.8.x or later, set PERL_VERSION_SAFE_MAX +# appropriately in your environment before running Configure. +if [ `awk '$1=="#define" && $2=="PERL_VERSION"{print $3}' patchlevel.h` \ + -gt ${PERL_VERSION_SAFE_MAX:-6} ] +then + cat <<EOF >&4 + +Perl versions greater than 5.6.x have not been ported to MachTen. If you +wish to build a version from the 5.6 track, please see the notes in +F<README.machten> +EOF + exit 1 +fi # # MachTen 4.1.1's support for shadow password file access is incomplete: # disable its use completely. @@ -95,7 +117,7 @@ # Specify a high level of optimization (-O3 wouldn't do much more) optimize=${optimize:--O2 -fomit-frame-pointer} -# Make symbol table listings les voluminous +# Make symbol table listings less voluminous nmopts=-gp # Set reg_infty -- the maximum allowable number of repeats in regular --- README.machten~ Wed Jun 6 23:46:22 2001 +++ README.machten Fri Feb 13 19:36:03 2004 @@ -11,9 +11,36 @@ This document describes how to build Perl 5 on Power MachTen systems, and discusses a few wrinkles in the implementation. -=head2 Compiling Perl 5 on MachTen +=head2 Perl version 5.8.x and greater not supported -To compile perl under MachTen 4.1.4 (and probably earlier versions): +B<Power MachTen is not supported by versions of Perl later than +5.6.x.> +If you wish to build a version from the 5.6 track, please +obtain a source distribution from the archive at +L<http://cpan.org/src/5.0/> and follow the instructions in its +README.machten file. + +MachTen is no longer supported by its developers, Tenon Intersystems. +A UNIX environment hosted on Mac OS Classic, MachTen has been +superseded by Mac OS X and by BSD and Linux implementations for Macintosh +hardware. +The final version of Power MachTen, 4.1.4, lacks many features found in +modern implementations of UNIX, and has a number of bugs. +These shortcomings prevent recent versions of Perl from being able to use +extensions on MachTen, and cause numerous test suite failures in the +perl core. + +In September 2003, a discussion on the MachTen mailing list determined +that there was no interest in making a later version of Perl build +successfully on MachTen. +Consequently, support for building Perl under MachTen has been suppressed +in Perl distributions published after February 2004. +The hints file, F<hints/machten.sh>, remains a part of the +distributions for reference purposes. + +=head2 Compiling Perl 5.6.x on MachTen + +To compile perl 5.6.x under MachTen 4.1.4 (and probably earlier versions): ./Configure -de make @@ -86,4 +113,4 @@ =head1 DATE -Version 1.0.1 2000-03-27 +Version 1.1.0 2004-02-13 -- Dominic Dunlop