PDL::Dev (3)
Leading comments
Automatically generated by Pod::Man 4.09 (Pod::Simple 3.35) Standard preamble: ========================================================================
NAME
PDL::Core::Dev - PDL development moduleDESCRIPTION
This module encapsulates most of the stuff useful forPDL
development and is often used from within Makefile.PL's.
SYNOPSIS
use PDL::Core::Dev;
FUNCTIONS
isbigendian
Is the machine big or little endian?
print "Your machins is big endian.\n" if isbigendian();
returns 1 if the machine is big endian, 0 if little endian, or dies if neither. It uses the "byteorder" element of perl's %Config array.
my $retval = isbigendian();
trylink
a perl configure clone
if (trylink 'libGL', '', 'char glBegin(); glBegin();', '-lGL') { $libs = '-lGLU -lGL'; $have_GL = 1; } else { $have_GL = 0; } $maybe = trylink 'libwhatever', $inc, $body, $libs, $cflags, {MakeMaker=>1, Hide=>0, Clean=>1};
Try to link some C-code making up the body of a function with a given set of library specifiers
return 1 if successful, 0 otherwise
trylink $infomsg, $include, $progbody, $libs [,$cflags,{OPTIONS}];
Takes 4 + 2 optional arguments.
- *
- an informational message to print (can be empty)
- *
- any commands to be included at the top of the generated C program (typically something like "#include "mylib.h"")
- *
- the body of the program (in function main)
- *
- library flags to use for linking. Preprocessing by MakeMaker should be performed as needed (see options and example).
- *
- compilation flags. For example, something like "-I/usr/local/lib". Optional argument. Empty if omitted.
- *
-
OPTIONS
-
- MakeMaker
- Preprocess library strings in the way MakeMaker does things. This is advisable to ensure that your code will actually work after the link specs have been processed by MakeMaker.
- Hide
-
Controls if linking output etc is hidden from the user or not.
On by default except within the build of the PDLdistribution where the config value set in perldl.conf prevails.
- Clean
- Remove temporary files. Enabled by default. You might want to switch it off during debugging.
-
datatypes_switch
prints on "STDOUT"XS
text for Core.xs.
generate_core_flags
prints on "STDOUT"XS
text with core flags, for Core.xs.
generate_badval_init
prints on "STDOUT"XS
text with badval initialisation, for Core.xs.