diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-05-04 18:00:34 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-05-04 18:00:34 +0000 |
commit | 3f619478f796eddbba6e39502fe941b285dd97b1 (patch) | |
tree | e2c7b5777f728320e5b5542b6213fd3591ba51e2 /storage/maria/libmarias3/docs/introduction/compiling.rst | |
parent | Initial commit. (diff) | |
download | mariadb-upstream.tar.xz mariadb-upstream.zip |
Adding upstream version 1:10.11.6.upstream/1%10.11.6upstream
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'storage/maria/libmarias3/docs/introduction/compiling.rst')
-rw-r--r-- | storage/maria/libmarias3/docs/introduction/compiling.rst | 79 |
1 files changed, 79 insertions, 0 deletions
diff --git a/storage/maria/libmarias3/docs/introduction/compiling.rst b/storage/maria/libmarias3/docs/introduction/compiling.rst new file mode 100644 index 00000000..b0ad3b4b --- /dev/null +++ b/storage/maria/libmarias3/docs/introduction/compiling.rst @@ -0,0 +1,79 @@ +Compiling libMariaS3 +==================== + +libMariaS3 is designed to be compiled with GCC or CLang on a modern Linux distrubition or Mac OSX. + +Prerequisites +------------- + +libMariaS3 requires *libcurl 7.x* and *libxml2* to be installed. For RPM based distributions this can be installed using: + +.. code-block:: bash + + sudo dnf install libcurl-devel libxml2-devel + +Building +-------- + +On most systems you can use the following commands, this is especially useful for customising your install:: + + autoreconf -fi + ./configure + make + make install + +The build system will automatically detect how many processor cores you have (physicaly and virtual) and set the ``--jobs`` options of make accordingly. + +Testing +------- + +libMariaS3 comes with a basic test suite which we recommend executing, especially if you are building for a new platform. + +You will need the following OS environment variables set to run the tests: + ++------------+----------------------------------------------------------+ +| Variable | Desription | ++============+==========================================================+ +| S3KEY | Your AWS access key | ++------------+----------------------------------------------------------+ +| S3SECRET | Your AWS secret key | ++------------+----------------------------------------------------------+ +| S3REGION | The AWS region (for example us-east-1) | ++------------+----------------------------------------------------------+ +| S3BUCKET | The S3 bucket name | ++------------+----------------------------------------------------------+ +| S3HOST | OPTIONAL hostname for non-AWS S3 service | ++------------+----------------------------------------------------------+ +| S3NOVERIFY | Set to ``1`` if the host should not use SSL verification | ++------------+----------------------------------------------------------+ + +The test suite is automatically built along with the library and can be executed with ``make check`` or ``make distcheck``. If you wish to test with valgrind you can use:: + + TESTS_ENVIRONMENT="./libtool --mode=execute valgrind --error-exitcode=1 --leak-check=yes --track-fds=yes --malloc-fill=A5 --free-fill=DE" make check + +Building RPMs +------------- + +The build system for libMariaS3 has the capability to build RPMs. To build RPMs simply do the following: + +.. code-block:: bash + + autoreconf -fi + ./configure + make dist-rpm + +.. note:: + The package ``redhat-rpm-config`` is required for building the RPM because this generates the debuginfo RPM. + +Building DEBs +------------- + +Debian packages for libMariaS3 can be built using the standard ``dpkg-buildpackage`` tool as follows: + +.. code-block:: bash + + autoreconf -fi + dpkg-buildpackage + +.. note:: + You may need to add ``--no-sign`` to dpkg-buildpackage to build unsigned packages. |