Conjury::C 1.004 review

Download
by rbytes.net on

Conjury::C is a Perl Conjury with C/C++ compilers, linkers and archivers. SYNOPSIS c_object Source => Isource-file>,

License: GPL (GNU General Public License)
File size: 33K
Developer: James Woodyatt
0 stars award from rbytes.net

Conjury::C is a Perl Conjury with C/C++ compilers, linkers and archivers.

SYNOPSIS

c_object
Source => Isource-file>,
Directory => Idirectory>,
Includes => [ Idir1>, Idir2>, ... ],
Defines => { Ivar1> => Ival1>, Ivar2> => Ival2>, ... },
Compiler => I< compiler>,
Options => [ I< opt1>, I< opt2>, ... ],
Factors => [ I< factor1>, I< factor2>, ... ];

c_executable
Directory => I< directory>,
Name => I< output-filename>,
Order => [
Searches => [ I< dir1>, I< dir2>, ... ],
Objects => [ I< obj1>, I< obj2>, ... ],
Libraries => [ I< lib1>, I< lib2>, ...] ],
Linker => I< linker>,
Options => [ I< opt1>, I< opt2>, ... ],
Factors => [ I< factor1>, I< factors2>, ... ]

c_static_library
Directory => I< directory>,
Name => I< output-filename>,
Objects => [ I< obj1>, I< obj2>, ...],
Archiver => I< archiver>,
Options => [ I< opt1>, I< opt2>, ... ],
Factors => [ I< factor1>, I< factors2>, ... ]

c_compiler
Program => I< program>,
Options => [ I< opt1>, I< opt2>, ... ],
Journal => I< journal>,
Flag_Map => { 'I' => I< include-flag>, 'D' => I< define-flag>,
'c' => I< source-flag>, 'o' => I< object-flag> },
Suffix_Rule => sub { my ($name) = @_; ... return $result },
Scanner => sub { my ($c_file, $args) = @_; ... return @result };

c_compiler Vendor => I< vendor>, ...

c_linker
Program => I< program>,
Options => [ I< opt1>, I< opt2>, ... ],
Journal => I< journal>,
Flag_Map => { 'l' => I< link-flag>, 'L' => I< search-flag>,
'o' => I< output-flag> },
Bind_Rule => sub { my ($lib, $bind) = @_;
... return @result },
Search_Rule => sub { my ($lib, $rule, $bind, @search) = @_;
... return @factors };

c_linker Vendor => I< vendor>, ...

c_archiver
Program => I< program>,
Options => [ I< opt1>, I< opt2>, ... ],
Journal => I< journal>,
Flag_Map => { 'r' => I< replace-flag> };

c_archiver Vendor => I< vendor>, ...

Spells for compiling and linking C/C++ software are constructed using c_object, c_executable and c_static_library. The compiler, linker and archiver used in the resulting actions are the same compiler, linker and archiver that were used to build Perl itself, unless otherwise specified.

Specializations of the general classes of compiler, linker and archiver can be created using c_compiler, c_linker and c_archiver.

Requirements:
Perl

Conjury::C 1.004 keywords