You've already forked libmarias3
mirror of
https://github.com/mariadb-corporation/libmarias3.git
synced 2025-09-11 02:31:50 +03:00
80 lines
2.9 KiB
ReStructuredText
80 lines
2.9 KiB
ReStructuredText
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.
|