develooper Front page | perl.perl5.porters | Postings from July 2003

Re: Which platforms need symbols to export to be explicitly listed?

Stas Bekman
July 30, 2003 05:14
Re: Which platforms need symbols to export to be explicitly listed?
Message ID:
Steve Hay wrote:
> Dan Sugalski wrote:
>> At 18:08 +0100 7/29/03, Steve Hay wrote:
>>> I recently submitted a patch (#20203) to get PerlIO_isutf8() exported 
>>> from the Perl library on Windows.
>>> I now need to workaround that missing function in existing 
>>> perl-5.8.0's out there, which raises the question: which other 
>>> platforms require symbols to export to be listed in this way in 
>>>  I believe that AIX ($^O eq 'aix') is one of them.  Is 
>>> that correct, and are there any more?

AIX, yes.

>> VMS also requires symbols to be exported.
> Comments in itself suggest that other Windows-ish platforms 
> (WinCE, NetWare and OS/2) and MacOS Classic also require this, but there 
> is no mention of VMS - not even in the code.  Why is there no mention of 
> VMS in if it has this requirement?
> How would I test for all such platforms in C pre-processor terms?
> - Am I correct in thinking that "#if defined(WIN32)" will catch WinCE as 
> well?
> - Does "#if defined (MACOS_TRADITIONAL)" identify Mac OS Classic?
> So far I have:
> #if (defined(WIN32) || defined(NETWARE) || defined(OS2) || defined(_AIX) 
> || defined(MACOS_TRADITIONAL) || defined(VMS))
> ...
> #endif

Can't you do it transparently?

#ifndef PerlIO_isutf8
#defined PerlIO_isutf8 whatever

Stas Bekman            JAm_pH ------> Just Another mod_perl Hacker     mod_perl Guide ---> Perl Programming lists via nntp and http.
Comments to Ask Bjørn Hansen at | Group listing | About