diff options
Diffstat (limited to 'Master/tlpkg/tlperl/lib/pods/perlxs.pod')
-rw-r--r-- | Master/tlpkg/tlperl/lib/pods/perlxs.pod | 20 |
1 files changed, 18 insertions, 2 deletions
diff --git a/Master/tlpkg/tlperl/lib/pods/perlxs.pod b/Master/tlpkg/tlperl/lib/pods/perlxs.pod index 5f773bbac32..415f2ad2a00 100644 --- a/Master/tlpkg/tlperl/lib/pods/perlxs.pod +++ b/Master/tlpkg/tlperl/lib/pods/perlxs.pod @@ -74,7 +74,7 @@ See L<perlxstut> for a tutorial on the whole extension creation process. Note: For some extensions, Dave Beazley's SWIG system may provide a significantly more convenient mechanism for creating the extension -glue code. See http://www.swig.org/ for more information. +glue code. See L<http://www.swig.org/> for more information. =head2 On The Road @@ -1434,10 +1434,26 @@ The XS module can use INCLUDE: to pull that file into it. INCLUDE: Rpcb1.xsh If the parameters to the INCLUDE: keyword are followed by a pipe (C<|>) then -the compiler will interpret the parameters as a command. +the compiler will interpret the parameters as a command. This feature is +mildly deprecated in favour of the C<INCLUDE_COMMAND:> directive, as documented +below. INCLUDE: cat Rpcb1.xsh | +Do not use this to run perl: C<INCLUDE: perl |> will run the perl that +happens to be the first in your path and not necessarily the same perl that is +used to run C<xsubpp>. See L<"The INCLUDE_COMMAND: Keyword">. + +=head2 The INCLUDE_COMMAND: Keyword + +Runs the supplied command and includes its output into the current XS +document. C<INCLUDE_COMMAND> assigns special meaning to the C<$^X> token +in that it runs the same perl interpreter that is running C<xsubpp>: + + INCLUDE_COMMAND: cat Rpcb1.xsh + + INCLUDE_COMMAND: $^X -e ... + =head2 The CASE: Keyword The CASE: keyword allows an XSUB to have multiple distinct parts with each |