Clone of https://github.com/NixOS/nixpkgs.git (to stress-test knotserver)
at devShellTools-shell 43 lines 1.5 kB view raw
1{ 2 lib, 3 stdenv, 4 fetchurl, 5 fetchpatch, 6 cyrus_sasl, 7 libevent, 8}: 9 10stdenv.mkDerivation rec { 11 pname = "libmemcached"; 12 version = "1.0.18"; 13 14 src = fetchurl { 15 url = "https://launchpad.net/libmemcached/${lib.versions.majorMinor version}/${version}/+download/libmemcached-${version}.tar.gz"; 16 sha256 = "10jzi14j32lpq0if0p9vygcl2c1352hwbywzvr9qzq7x6aq0nb72"; 17 }; 18 19 # Fix linking against libpthread (patch from Fedora) 20 # https://bugzilla.redhat.com/show_bug.cgi?id=1037707 21 # https://bugs.launchpad.net/libmemcached/+bug/1281907 22 # Fix building on macOS (patch from Homebrew) 23 # https://bugs.launchpad.net/libmemcached/+bug/1245562 24 patches = 25 lib.optional stdenv.hostPlatform.isLinux ./libmemcached-fix-linking-with-libpthread.patch 26 ++ lib.optional stdenv.hostPlatform.isDarwin (fetchpatch { 27 url = "https://raw.githubusercontent.com/Homebrew/homebrew/bfd4a0a4626b61c2511fdf573bcbbc6bbe86340e/Library/Formula/libmemcached.rb"; 28 sha256 = "1gjf3vd7hiyzxjvlg2zfc3y2j0lyr6nhbws4xb5dmin3csyp8qb8"; 29 }) 30 ++ lib.optional stdenv.hostPlatform.isMusl ./musl-fixes.patch; 31 32 buildInputs = [ libevent ]; 33 propagatedBuildInputs = [ cyrus_sasl ]; 34 35 env.NIX_CFLAGS_COMPILE = "-fpermissive"; 36 37 meta = with lib; { 38 homepage = "https://libmemcached.org"; 39 description = "Open source C/C++ client library and tools for the memcached server"; 40 license = licenses.bsd3; 41 platforms = platforms.linux ++ platforms.darwin; 42 }; 43}