develooper Front page | perl.perl5.porters | Postings from August 2012

NetWare v. PerlIO

Thread Next
August 12, 2012 17:06
NetWare v. PerlIO
Message ID:
Finally into trying a PerlIO build with the LibC and NetWare, and for 
the most part the results are 'encouraging' (for me anyway).

Of the Perl Core only 2 files are hold-outs (NetWare specific places):

pp_sys.c : 4 places reference setbuf()
util.c   : 2 references to popen(), 2 to pclose() (in patches)

and a NetWare NWMAin.c has a reference to fopen() and fclose().

In short, this looks fixable, although not yet looked closely at how to 
do it. The setbuf(x, NULL) calls remove a 'default' buffer and reduces 
the related IO stream to 'unbuffered', which makes no real sense to my 
understanding of IO, so this may be solvable simply by dropping them and 
see if Perl can pass some suitable tests.

As none of the offending lines are 'vital' to a link, I commented them 
out and re-tried linking; NetWare's Perl.nlm then built but the linker 
found problems with 3 symbols in Libperl's generated .imp file.

> Linking   : reltarg\Libperl.nlm
> Error! E2028: PL_def_layerlist is an undefined reference
> Error! E2028: PL_known_layers is an undefined reference
> Error! E2028: PL_perlio is an undefined reference

These three are in the as 'givens' for 'netware', but other 
than some references to them in PerlIO.c, can not find where they are 
actually defined/get a life. By tweaking the .imp to omit the three 
'errant' symbols, the Libperl links, so there appears to be little use 
for them...(?)

Any feedback or clarification on any of this is most welcome.


Thread Next Perl Programming lists via nntp and http.
Comments to Ask Bjørn Hansen at | Group listing | About