libmemcached-awesome is an open source C/C++ client library and tools for the memcached server (http://memcached.org/). It has been designed to be light on memory usage, thread safe, and provide full access to server side methods.
NOTE:
This is a resurrection of the original work from Brian Aker at libmemcached.org.
See https://awesomized.github.io/libmemcached
See gh-pages/publish script and the docs-publish-pages workflow, which automate pushing updated documentation to github pages.
libmemcached-awesome uses CMake
.
Please see/edit CMakeConfig.txt
or use ccmake(1)
or
cmake-gui(1)
to set any preferred options.
git clone github.com:awesomized/libmemcached
mkdir build-libmemcached
cd $_
cmake ../libmemcached
make
sudo make install
- CMake 3.9+
- C++11 compiler
- GNU Bison 2.3+ and Flex
- C++17 compiler (required for: tests)
- Intel's libtbb (optional for: tests; for GCC's stdlib parallelism support)
- pthreads (required for: tests, contrib/bin/memaslap, libmemcachedutil/pool)
- libevent (required for: contrib/bin/memaslap)
- Cyrus' libsasl2 (required for: libmemcached/sasl)
CI and release builds for Linux, a couple BSDs, MacOS and Windows are available at https://artifacts.m6w6.name/libmemcached/ and rsync://m6w6.name::artifacts/libmemcached/.
Enable the BUILD_TESTING
setting for a build and run make test
.
cmake -DBUILD_TESTING=ON ../libmemcached
make test
CI/Testing is performed on the following system matrix:
OS | Compiler | Arch | Comments |
---|---|---|---|
Linux | GNU 7/9/10, Clang 9/10/11/12 | amd64 | sasl, coverage, sanitizers |
MacOS | AppleClang 12 | amd64 | sasl, coverage |
FreeBSD | Clang 11 | amd64 | sasl, coverage |
OpenBSD | Clang 10 | amd64 | sasl, coverage |
Windows | MSVC 16, MinGW | amd64 | no sasl, no tests |
Solaris | SunPro 12.5 | amd64 | no sasl, no tests, manually |
libmemcached-awesome has been tested against [memcached](https://github. com/memcached/memcached) v1.5 and v1.6.
Check out the latest releases or the bundled ChangeLog for a comprehensive list of changes.
libmemcached-awesome is licensed under the 3-Clause-BSD license, which can be found in the accompanying LICENSE file.
Please report any issues on the bug tracker.
A list of known permanent issues is maintained in BUGS.
All forms of contribution are welcome! Please see the bundled CONTRIBUTING note for the general principles followed.
The list of current and past maintainers and contributors is available in AUTHORS.