Mailing List Archive

porting perl?
G'day All,

NeXT is going ot be shipping Perl5 with their next OS release and I have been
busily porting 5.001m to it.

I have a couple of questions?

1> Where can I find the sources for the metaconf which produces Configure. I
can't find it in the distribution.

2> Next supports the concept of MABs. I have been introducing these into the
makefiles and make generators piece meal but it doesn't sit neatly with the
'archlib' stuff. At the moment I have introduced a new compile and link flag
called 'arch' that is resolved by cflags, MakeMaker and Makefile.SH. Does any
other port out there use something similar to the Next Multi-Architecture
Binary?

3> Next is introducing a new variant on shared libraries that make a
distinction between a shared library and a loadable module. As far as I can
tell the make script that produces libperl and MakeMaker which produces the
loadable modules assume exactly the same format with linking. I would like to
introduce this distinction.

All comments and suggestions would be gratefully received.

Godfrey van der Linden
Re: porting perl? [ In reply to ]
On Sun, 03 Dec 1995 17:29:37 -0800, Godfrey van der Linden <Godfrey_van_der_Linden@NeXT.COM> wrote:
>2> Next supports the concept of MABs. I have been introducing these into the
>makefiles and make generators piece meal but it doesn't sit neatly with the
>'archlib' stuff. At the moment I have introduced a new compile and link flag
>called 'arch' that is resolved by cflags, MakeMaker and Makefile.SH. Does any
>other port out there use something similar to the Next Multi-Architecture
>Binary?

MacPerl has to generate fat binaries, which it currently does with ad hoc
methods (there is no MacMakeMaker yet).

Matthias

-----
Matthias Neeracher <neeri@iis.ee.ethz.ch> http://err.ethz.ch/members/neeri.html
"One fine day in my odd past..." -- Pixies, _Planet of Sound_
Re: porting perl? [ In reply to ]
On Sun, 3 Dec 1995, Godfrey van der Linden wrote:

> G'day All,
>
> NeXT is going ot be shipping Perl5 with their next OS release and I have been
> busily porting 5.001m to it.

Hmm. It's a tough call, but offhand I'd recommend considering 5.002beta1
(with my patches a through d applied).

> I have a couple of questions?
>
> 1> Where can I find the sources for the metaconf which produces Configure. I
> can't find it in the distribution.

Metaconfig itself is available from any comp.sources.misc archive, or
from ftp.foretune.co.jp. You want a package called 'dist3.0'.

In order to generate the Configure used in perl, you need the private
metaconfig units I used. Some stuff, such as selecting extensions, is
specific to perl and not part of the general metaconfig distribution.
I posted those units as a patch on top of 5.001m sometime either in late
June or early July. You should be able to find it in archives of this
list.

You might have difficulty recreating 5.001m's Configure exactly.
Dist itself has undergone some enhancements since 5.001m. The current
patchlevel on dist is 60, though some of those patches include items
similar to what I had privately included in 5.001m's Configure.


> 3> Next is introducing a new variant on shared libraries that make a
> distinction between a shared library and a loadable module. As far as I can
> tell the make script that produces libperl and MakeMaker which produces the
> loadable modules assume exactly the same format with linking. I would like to
> introduce this distinction.

Dynamic loading using the dld library on Linux also makes such a
distinction. Sort of, anyway. The 'dlext' Configure variable
is the extension to be used for dynamically-loadable modules, while the
'so' suffix is the extension used on shared libraries. You'll notice
MakeMaker has a lot of dld-specific stuff in it, but you might do well
to build off that.

> All comments and suggestions would be gratefully received.

Good luck. I didn't deliberately design anything to make "fat" binaries
difficult, but since I had never heard of the concept, I didn't
deliberately do anything to make it easy either :-).

Andy Dougherty doughera@lafcol.lafayette.edu
Dept. of Physics
Lafayette College, Easton PA 18042
Re: porting perl? [ In reply to ]
> Metaconfig itself is available from any comp.sources.misc archive, or
> from ftp.foretune.co.jp. You want a package called 'dist3.0'.

And CPAN!

authors/Raphael_Manfredi/ which is a symlink to authors/id/RAM/


andreas