[Date Prev][Date Next][Thread Prev][Thread Next] [Search] [Date Index] [Thread Index]

[MacPerl] Probable Minimum Library Set for XS Builds



This is mostly for the attention of non-traditional MacPerl extension
builders. That is, you don't have the old libraries, and are working with
CW Pro. David Steffen and myself are thrashing out this procedure to
develop a tutorial, and if anyone else wants to join in, please.
Especially if you're a CFM68K type. :-)

I did up a barebones little XS:

MODULE = TestMod		PACKAGE = TestMod		

double
cube(a, b)
		double a
		double &b = NO_INIT
	  CODE:
		RETVAL = b = a * a * a;
	  OUTPUT:
		b
		RETVAL


and after (for a change) reading some docs, attempted to compile and link
with the following libraries:

PPC -
	PerlStub
	MSL RuntimePPC.Lib

CFM68K -
	PerlStub
	MSL MWRuntimeLibCFM68K

That's it. It _does_ work, the extension loads and tests and runs, so for
an XS with absolutely no external functions, this appears to be it. Also,
the MacPerl specific includes were knocked down to just SFIO and GUSI, and
I'm not even a 100% that I needed to leave in GUSI, but no harm done to
throw in extra include paths. The shared libraries come in at a cool 1544
and 1570 bytes for CFM68K and PPC, respectively.

This appears to be the baseline. Throw in Toolbox and you'll need
InterfaceLib; throw in C library functions and you'll need the C library,
and so forth.

Hope there's some interest in this. Comments, observations, questions -
please ask on the list or get in touch.

Arved



***** Want to unsubscribe from this list?
***** Send mail with body "unsubscribe" to mac-perl-request@iis.ee.ethz.ch