1 { stdenv, lib, fetchFromGitHub, bzip2, expat, openssl, lmdb
2 , darwin, libiconv, Security
7 zeroc_mcpp = stdenv.mkDerivation rec {
11 src = fetchFromGitHub {
15 sha256 = "1psryc2ql1cp91xd3f8jz84mdaqvwzkdq2pr96nwn03ds4cd88wh";
18 configureFlags = [ "--enable-mcpplib" ];
19 installFlags = [ "PREFIX=$(out)" ];
22 in stdenv.mkDerivation rec {
26 src = fetchFromGitHub {
30 sha256 = "0m9lh79dfpcwcp2jhmj0wqdcsw3rl633x2hzfw9n2i34jjv64fvg";
33 buildInputs = [ zeroc_mcpp bzip2 expat openssl lmdb ]
34 ++ lib.optionals stdenv.isDarwin [ darwin.cctools libiconv Security ];
36 NIX_CFLAGS_COMPILE = "-Wno-error=class-memaccess -Wno-error=deprecated-copy";
38 prePatch = lib.optional stdenv.isDarwin ''
39 substituteInPlace Make.rules.Darwin \
49 "CONFIGS=${if cpp11 then "cpp11-shared" else "shared"}"
50 "SKIP=slice2py" # provided by a separate package
54 buildFlags = [ "srcs" ]; # no tests; they require network
56 enableParallelBuilding = true;
58 outputs = [ "out" "bin" "dev" ];
61 mkdir -p $bin $dev/share
63 mv $out/share/ice $dev/share
67 homepage = "https://www.zeroc.com/ice.html";
68 description = "The internet communications engine";
69 license = licenses.gpl2;
70 platforms = platforms.unix;
71 maintainers = with maintainers; [ abbradar ];