aboutsummaryrefslogtreecommitdiffstats
path: root/doc/manual/building.rst
diff options
context:
space:
mode:
authorJack Lloyd <[email protected]>2016-11-05 21:58:06 -0400
committerJack Lloyd <[email protected]>2016-11-05 21:58:06 -0400
commit8585ef862f6d0932d41a4bd03a2dd93fc15b6567 (patch)
treebd688bbcd5ff31202bb00569f4839477a1c95af5 /doc/manual/building.rst
parentb03b5c3f23cb71bee395bd9a85e4901de31f2a58 (diff)
Revert "Remove the Perl XS module"
This reverts commit 2ec08fa6b5fd270e50f8526c1c6dfaabfda66e02. The Perl wrapper was removed as unmaintained, but nobody is likely to maintain it if they don't know it exists.
Diffstat (limited to 'doc/manual/building.rst')
-rw-r--r--doc/manual/building.rst38
1 files changed, 38 insertions, 0 deletions
diff --git a/doc/manual/building.rst b/doc/manual/building.rst
index f2a545e63..1ecccbce6 100644
--- a/doc/manual/building.rst
+++ b/doc/manual/building.rst
@@ -415,3 +415,41 @@ build step is required, just import botan.py
See :doc:`Python Bindings <python>` for more information about the
Python bindings.
+
+Building the Perl XS wrappers
+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+
+To build the Perl XS wrappers, after building the main library change
+your directory to ``src/contrib/perl-xs`` and run ``perl Makefile.PL``,
+then run ``make`` to build the module and ``make test`` to run the
+test suite::
+
+ $ perl Makefile.PL
+ Checking if your kit is complete...
+ Looks good
+ Writing Makefile for Botan
+ $ make
+ cp Botan.pm blib/lib/Botan.pm
+ AutoSplitting blib/lib/Botan.pm (blib/lib/auto/Botan)
+ /usr/bin/perl5.8.8 /usr/lib64/perl5/5.8.8/ExtUtils/xsubpp [...]
+ g++ -c -Wno-write-strings -fexceptions -g [...]
+ Running Mkbootstrap for Botan ()
+ chmod 644 Botan.bs
+ rm -f blib/arch/auto/Botan/Botan.so
+ g++ -shared Botan.o -o blib/arch/auto/Botan/Botan.so \
+ -lbotan -lbz2 -lpthread -lrt -lz \
+
+ chmod 755 blib/arch/auto/Botan/Botan.so
+ cp Botan.bs blib/arch/auto/Botan/Botan.bs
+ chmod 644 blib/arch/auto/Botan/Botan.bs
+ Manifying blib/man3/Botan.3pm
+ $ make test
+ PERL_DL_NONLAZY=1 /usr/bin/perl5.8.8 [...]
+ t/base64......ok
+ t/filt........ok
+ t/hex.........ok
+ t/oid.........ok
+ t/pipe........ok
+ t/x509cert....ok
+ All tests successful.
+ Files=6, Tests=83, 0 wallclock secs ( 0.08 cusr + 0.02 csys = 0.10 CPU)