• Home
  • History
  • Annotate
Name Date Size #Lines LOC

..03-May-2022-

inc/ILCPPConfig/H19-Apr-2019-149111

lib/Inline/H19-Apr-2019-2,8562,137

t/H19-Apr-2019-2,3641,790

xt/H19-Apr-2019-282197

ChangesH A D19-Apr-201918.7 KiB499410

LICENSEH A D25-Mar-20198.7 KiB202151

MANIFESTH A D19-Apr-20191.5 KiB7069

MANIFEST.SKIPH A D25-Mar-2019436 3531

META.jsonH A D19-Apr-20192.4 KiB9594

META.ymlH A D19-Apr-20191.2 KiB4948

Makefile.PLH A D03-May-20224.5 KiB156123

READMEH A D19-Apr-20192.9 KiB9061

TESTEDH A D25-Mar-20193.9 KiB10789

README

1INTRODUCTION:
2
3Inline::CPP -- Write Perl subroutines and classes in C++.
4
5Inline::CPP lets you write Perl subroutines and classes in C++. You
6don't have to learn XS or SWIG, you can just put code right "inline"
7in your source.
8
9Example:
10
11   use Inline CPP => <<'END';
12
13   class JAxH {
14     public:
15       JAxH(char *x);
16
17       SV* data();
18     private:
19       SV *dat;
20   };
21
22   JAxH::JAxH(char *x) { dat = newSVpvf("Just Another %s Hacker", x); }
23   SV* JAxH::data() { return dat; }
24
25   END
26
27   print JAxH->new('Inline')->data(), "\n";
28
29When run, this complete program prints:
30
31   Just Another Inline Hacker.
32
33
34-----------------------------------------------------------------------------
35INSTALLATION:
36
37It should go without saying, but you will need a C++ compiler on your system.
38The C++ compiler should be of the same flavor as the C compiler used to build
39perl itself.  If you're using GNU C++, be sure that you have the g++ front
40end installed (it isn't installed by default on some Linux distros, for
41example).  If you cannot execute 'g++ -v' from the command prompt, or some
42variation for your specific C++ compiler,
43
44*** DISABLE HARNESS_OPTIONS=j9 ***
45
46If you have the HARNESS_OPTIONS environment variable set to run tests
47concurrently in multiple processes, the test suite will attempt to invoke
48the C++ compiler multiple times concurrently.  Recent versions of Inline and
49Inline::C have made progress on stamping out race conditions, but YMMV for now.
50
51Also, some smoke testers run their testing in parallel, which may also be
52problematic, and may result in FAIL reports for reasons that will never
53occur in the real world.
54
55See Makefile.PL, or the META.* files for lists of dependencies and minimum
56dependency version numbers.  Minimum Perl version is now 5.8.1, same as Inline.
57
58To install Inline::CPP do this:
59
60perl Makefile.PL
61make
62make test
63make install
64
65(On ActivePerl for MSWin32, use nmake instead of make.)
66(On Strawberry Perl you may use dmake instead.)
67
68As Makefile.PL runs you will be prompted for what C++ compiler and library to
69use.  Accepting the default should work in nearly every case (and if it
70doesn't, let me know).
71
72-----------------------------------------------------------------------------
73INFORMATION:
74
75- For more information on Inline::CPP see 'perldoc Inline::CPP'.
76- For information about Inline.pm, see 'perldoc Inline'.
77- For information about Inline::C (of which this is a subclass)
78  see 'perldoc Inline::C', as well as 'perldoc Inline::C-Cookbook'.
79- For information on using Perl with C or C++, see 'perldoc perlapi'
80
81The Inline mailing list is inline@perl.org. Send mail to
82inline-subscribe@perl.org to subscribe.
83
84This module's development is under version control with Git, hosted on Github
85at https://github.com/daoswald/Inline-CPP
86
87Please send questions and comments to "David Oswald" <DAVIDO@cpan.org>
88
89Copyright (c) 2003 - 2014, Neil Watkiss, David Oswald. All Rights Reserved.
90