Skip to content

awesomized/libmemcached

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

libmemcached-awesome

License Badge

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.

Documentation

Docs Actions Badge

See https://awesomized.github.io/libmemcached

Building and updating docs

See gh-pages/publish script and the docs-publish-pages workflow, which automate pushing updated documentation to github pages.

Installing

libmemcached-awesome uses CMake. Please see/edit CMakeConfig.txt or use ccmake(1) or cmake-gui(1) to set any preferred options.

From source

git clone github.com:awesomized/libmemcached
mkdir build-libmemcached
cd $_
cmake ../libmemcached
make
sudo make install

Requirements

  • CMake 3.9+
  • C++11 compiler
  • GNU Bison 2.3+ and Flex
Optional dependencies
  • 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)

Binaries

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/.

Testing

Enable the BUILD_TESTING setting for a build and run make test.

cmake -DBUILD_TESTING=ON ../libmemcached
make test

Continuous integration

Actions Badge Sourcehut Badge

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.

ChangeLog

Check out the latest releases or the bundled ChangeLog for a comprehensive list of changes.

License

libmemcached-awesome is licensed under the 3-Clause-BSD license, which can be found in the accompanying LICENSE file.

Contributing

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.