Mailing List Archive

NetWare/ has been broken since 2009 - it should go
The port in NetWare/ has been broken since 2009 and no-one has noticed.

Whodunnit? It was me! Oops. :-)

This commit:

commit 3df97b6db7f5849e9f9cfea221d12f5b011fc923
Author: Nicholas Clark <nick@ccl4.org>
Date: Tue Jan 9 21:44:05 2007 +0000

Make makedef.pl warnings and strict clean.

p4raw-id: //depot/perl@29740

did this:

+use strict;


and added the first `use` statement to makedef.pl


This must have immediately broken the build on platforms such as AIX that
use Makefile.SH, as Rafael fixed my goof 3 days later:

commit c560d966b003defa80c2baa9fedc0a294d2b3afe
Author: Rafael Garcia-Suarez <rgarciasuarez@gmail.com>
Date: Fri Jan 12 13:57:45 2007 +0000

makedef.pl should be able to load "strict"

p4raw-id: //depot/perl@29774

diff --git a/makedef.pl b/makedef.pl
index 12a17b37fc..6c0803317f 100644
--- a/makedef.pl
+++ b/makedef.pl
@@ -8,6 +8,8 @@
#
# reads global.sym, pp.sym, perlvars.h, intrpvar.h, thrdvar.h, config.h
# On OS/2 reads miniperl.map and the previous version of perl5.def as well
+
+BEGIN { unshift @INC, "lib" }
use strict;

use vars qw($PLATFORM $CCTYPE $FILETYPE $CONFIG_ARGS $ARCHNAME $PATCHLEVEL);


I had assumed that I must have broken Win32 and NetWare with that first
commit, but seems that actually it took me another two years. We have
this *fix*:

commit c1effa61278e47c916466883d74905b04fedc388
Author: Nicholas Clark <nick@ccl4.org>
Date: Wed Sep 23 16:20:37 2009 +0100

Following b0e687f7 Win32 requires an -I..\lib for makedef.pl and x2p\*.PL

win32/Makefile | 6 +++---
win32/makefile.mk | 6 +++---
2 files changed, 6 insertions(+), 6 deletions(-)



because of this change 6 hours earlier:

commit b0e687f777617f7ff223559dbda04c4f53864b19
Author: Nicholas Clark <nick@ccl4.org>
Date: Wed Sep 23 10:42:00 2009 +0100

Restrict miniperl to just -I..., the split of $ENV{PERL5LIB}, and "." in @INC

diff --git a/perl.c b/perl.c
index 22c18ebde7..8691a15645 100644
--- a/perl.c
+++ b/perl.c
@@ -4058,6 +4058,10 @@ S_init_perllib(pTHX)
#endif /* VMS */
}

+#ifndef PERL_IS_MINIPERL
+ /* miniperl gets just -I..., the split of $ENV{PERL5LIB}, and "." in @INC
+ (and not the architecture specific directories from $ENV{PERL5LIB}) */
+
/* Use the ~-expanded versions of APPLLIB (undocumented),
ARCHLIB PRIVLIB SITEARCH SITELIB VENDORARCH and VENDORLIB
*/
@@ -4188,6 +4192,7 @@ S_init_perllib(pTHX)
INCPUSH_ADD_OLD_VERS|INCPUSH_ADD_ARCHONLY_SUB_DIRS
|INCPUSH_CAN_RELOCATE);
#endif
+#endif /* !PERL_IS_MINIPERL */

if (!PL_tainting)
S_incpush(aTHX_ STR_WITH_LEN("."), 0);



VMS didn't start using makedef.pl until 2011, with commit 93ea32b83e27783a,
and WinCE was likely broken from that commit in 2009 until Nov 2012, when

commit 517bb5c6f8501a4a11c30ba6d11dbc96cc1f5ce2
Author: Konovalov, Vadim (Vadim)** CTR ** <vadim.konovalov@alcatel-lucent.com>
Date: Thu Nov 1 14:03:34 2012 +0000

Initial (incomplete) patch to start restoring WinCE build

Subject: RE: status of WinCE Perl port in 2012
From: "Konovalov, Vadim (Vadim)** CTR **" <vadim.konovalov@alcatel-lucent.com>
Date: Tue, 23 Oct 2012 14:26:49 +0200
Message-ID: <35BF8D9716175C43BB9D67CA60CC345E028EE0C899@FRMRSSXCHMBSC2.dc-m.alcatel-lucent.com>

win32/Makefile.ce | 44 ++++++++++++++++++++++++++------------------
win32/wince.c | 48 ++++++++++++++++++++++++++++++++++++++++++++++--
2 files changed, 72 insertions(+), 20 deletions(-)


did this:

perldll.def : $(HPERL) $(CONFIGPM) ..\embed.fnc ..\makedef.pl create_perllibst_h.pl
- $(HPERL) -MCross -I..\lib create_perllibst_h.pl
- $(HPERL) -MCross -w ..\makedef.pl PLATFORM=wince $(OPTIMIZE) $(DEFINES) $(BUILDOPT) \
+ $(HPERL) -I..\lib -MCross create_perllibst_h.pl
+ $(HPERL) -I..\lib -MCross -w ..\makedef.pl PLATFORM=wince $(OPTIMIZE) $(DEFINES) $(BUILDOPT) \
CCTYPE=$(CCTYPE) -DPERL_DLL=$(PERLDLL) TARG_DIR=..\ > perldll.def



The last *real* update to NetWare/Makefile was this commit:

commit 1a95e36d92295cabb6c213a2f397c4cb7614d12c
Author: Jarkko Hietaniemi <jhi@iki.fi>
Date: Fri Jun 28 13:15:17 2002 +0000

NetWare update from Ananth Kesari.

p4raw-id: //depot/perl@17376

NetWare/Makefile | 12 ++--
NetWare/netware.h | 6 ++
NetWare/nw5.c | 149 ++++++++++++++++++++++++++++++++++++++--
ext/DynaLoader/DynaLoader_pm.PL | 20 ++----
lib/ExtUtils/MM_NW5.pm | 8 +--
5 files changed, 165 insertions(+), 30 deletions(-)


Hence NetWare/Makefile has been broken for at least 12 years, quite possibly
more like 20, and no-one has noticed.

Nicholas Clark
Re: NetWare/ has been broken since 2009 - it should go [ In reply to ]
Nicholas Clark <nick@ccl4.org> writes:

> The port in NetWare/ has been broken since 2009 and no-one has noticed.

I created a smoke-me branch for removing it a bit over a year go, but
got distracted from actually merging it. I'll rebase and create a PR
for it.

- ilmari
Re: NetWare/ has been broken since 2009 - it should go [ In reply to ]
On Wed, Sep 29, 2021 at 11:13:56AM +0100, Dagfinn Ilmari Manns?ker wrote:
> Nicholas Clark <nick@ccl4.org> writes:
>
> > The port in NetWare/ has been broken since 2009 and no-one has noticed.
>
> I created a smoke-me branch for removing it a bit over a year go, but
> got distracted from actually merging it. I'll rebase and create a PR
> for it.

Oh my, that takes "here's one I prepared earlier" to a whole new level:

$ git show --shortstat origin/smoke-me/ilmari/remove-netware
commit ccb35e8ab9be0d7157065f2583a8e312387e648a (origin/smoke-me/ilmari/remove-netware)
Author: Dagfinn Ilmari Manns?ker <ilmari@ilmari.org>
Date: Mon Jul 6 16:30:53 2020 +0100

Remove NetWare support

131 files changed, 139 insertions(+), 19798 deletions(-)


Nicholas Clark
Re: NetWare/ has been broken since 2009 - it should go [ In reply to ]
Dagfinn Ilmari Mannsåker <ilmari@ilmari.org> writes:

> Nicholas Clark <nick@ccl4.org> writes:
>
>> The port in NetWare/ has been broken since 2009 and no-one has noticed.
>
> I created a smoke-me branch for removing it a bit over a year go, but
> got distracted from actually merging it. I'll rebase and create a PR
> for it.

Done: https://github.com/Perl/perl5/pull/19159

I also have commits removing DOS/DJGPP, AT&T UWIN and OS/2 support that
were on top of that. The first two are definitely dead, but there
appear to be two still (somewhat) active OS/2 forks
(http://ecomstation.com/ and https://www.arcanoae.com/arcaos/).

There exist perl packages for them, but the latest versions I can find
evidence of are 5.14 (https://os2ports.smedley.id.au/?page_id=180) and
5.16 (https://github.com/komh/perl-os2/tree/5.16.0-os2).

- ilmari
Re: NetWare/ has been broken since 2009 - it should go [ In reply to ]
On Wed, Sep 29, 2021 at 02:15:45PM +0100, Dagfinn Ilmari Manns?ker wrote:
> Dagfinn Ilmari Manns?ker <ilmari@ilmari.org> writes:

> I also have commits removing DOS/DJGPP, AT&T UWIN and OS/2 support that
> were on top of that. The first two are definitely dead, but there
> appear to be two still (somewhat) active OS/2 forks
> (http://ecomstation.com/ and https://www.arcanoae.com/arcaos/).
>
> There exist perl packages for them, but the latest versions I can find
> evidence of are 5.14 (https://os2ports.smedley.id.au/?page_id=180) and
> 5.16 (https://github.com/komh/perl-os2/tree/5.16.0-os2).

"Your platform is at risk if you do not keep up payments ^W OK reports"

Maybe we revisit my plan from 5.14-era - one platform gets the chop each
dev release. Make everyone nervous...

Nicholas Clark
Re: NetWare/ has been broken since 2009 - it should go [ In reply to ]
This seems related

https://www.os2world.com/cms/index.php/past-news/80-news/software/22838-perl-5-35-0

Which points to an active port maintained by
https://os2ports.smedley.id.au/

Strangely the page above says 5.35 but links to 5.32

There might be an opportunity here to merge out of tree patches?


Dean

On 2021-09-29 06:15, Dagfinn Ilmari Mannsåker wrote:
> Dagfinn Ilmari Mannsåker <ilmari@ilmari.org> writes:
>
>> Nicholas Clark <nick@ccl4.org> writes:
>>
>>> The port in NetWare/ has been broken since 2009 and no-one has
>>> noticed.
>>
>> I created a smoke-me branch for removing it a bit over a year go, but
>> got distracted from actually merging it. I'll rebase and create a PR
>> for it.
>
> Done: https://github.com/Perl/perl5/pull/19159
>
> I also have commits removing DOS/DJGPP, AT&T UWIN and OS/2 support that
> were on top of that. The first two are definitely dead, but there
> appear to be two still (somewhat) active OS/2 forks
> (http://ecomstation.com/ and https://www.arcanoae.com/arcaos/).
>
> There exist perl packages for them, but the latest versions I can find
> evidence of are 5.14 (https://os2ports.smedley.id.au/?page_id=180) and
> 5.16 (https://github.com/komh/perl-os2/tree/5.16.0-os2).
>
> - ilmari