mirror of
https://github.com/NixOS/nixpkgs.git
synced 2024-11-16 23:03:40 +01:00
Merge pull request #135087 from hrhino/fix/zeroc-ice
This commit is contained in:
commit
14f81d33ca
4 changed files with 51 additions and 24 deletions
|
@ -91,7 +91,7 @@ let
|
|||
concatImapStringsSep makeSearchPath makeSearchPathOutput
|
||||
makeLibraryPath makeBinPath optionalString
|
||||
hasInfix hasPrefix hasSuffix stringToCharacters stringAsChars escape
|
||||
escapeShellArg escapeShellArgs replaceChars lowerChars
|
||||
escapeShellArg escapeShellArgs escapeRegex replaceChars lowerChars
|
||||
upperChars toLower toUpper addContextFrom splitString
|
||||
removePrefix removeSuffix versionOlder versionAtLeast
|
||||
getName getVersion
|
||||
|
|
|
@ -1,17 +1,19 @@
|
|||
{ stdenv, lib, fetchFromGitHub, fetchpatch, mcpp, bzip2, expat, openssl, db5
|
||||
{ stdenv, lib, fetchFromGitHub
|
||||
, mcpp, bzip2, expat, openssl, db5
|
||||
, darwin, libiconv, Security
|
||||
, zeroc-ice # to share meta
|
||||
, cpp11 ? false
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "zeroc-ice";
|
||||
version = "3.6.3";
|
||||
version = "3.6.5";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "zeroc-ice";
|
||||
repo = "ice";
|
||||
rev = "v${version}";
|
||||
sha256 = "05xympbns32aalgcfcpxwfd7bvg343f16xpg6jv5s335ski3cjy2";
|
||||
sha256 = "073h7v1f2sw77cr1a6xxa5l9j547pz24sxa9qdjc4zki0ivcnq15";
|
||||
};
|
||||
|
||||
buildInputs = [ mcpp bzip2 expat openssl db5 ]
|
||||
|
@ -27,13 +29,8 @@ stdenv.mkDerivation rec {
|
|||
'';
|
||||
|
||||
patches = [
|
||||
# Fixes compilation issues with GCC 8 using one of the patches
|
||||
# provided in https://github.com/zeroc-ice/ice/issues/82
|
||||
( fetchpatch {
|
||||
url = "https://github.com/zeroc-ice/ice/commit/a6a4981616b669432ff7b588179d6e93694d9e3f.patch";
|
||||
sha256 = "17j5r7gsa3izrm7zln4mrp7l16h532gvmpas0kzglybicbiz7d56";
|
||||
stripLen = 1;
|
||||
})
|
||||
# Fixes compilation warning about uninitialied variables (in test code)
|
||||
./uninitialized-variable-warning.patch
|
||||
];
|
||||
|
||||
preBuild = ''
|
||||
|
@ -58,10 +55,5 @@ stdenv.mkDerivation rec {
|
|||
rm -rf $out/share/slice
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "http://www.zeroc.com/ice.html";
|
||||
description = "The internet communications engine";
|
||||
license = licenses.gpl2;
|
||||
platforms = platforms.unix;
|
||||
};
|
||||
inherit (zeroc-ice) meta;
|
||||
}
|
||||
|
|
|
@ -1,5 +1,7 @@
|
|||
{ stdenv, lib, fetchFromGitHub, bzip2, expat, openssl, lmdb
|
||||
{ stdenv, lib, fetchFromGitHub
|
||||
, bzip2, expat, libedit, lmdb, openssl
|
||||
, darwin, libiconv, Security
|
||||
, python3 # for tests only
|
||||
, cpp11 ? false
|
||||
}:
|
||||
|
||||
|
@ -21,16 +23,16 @@ let
|
|||
|
||||
in stdenv.mkDerivation rec {
|
||||
pname = "zeroc-ice";
|
||||
version = "3.7.2";
|
||||
version = "3.7.6";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "zeroc-ice";
|
||||
repo = "ice";
|
||||
rev = "v${version}";
|
||||
sha256 = "0m9lh79dfpcwcp2jhmj0wqdcsw3rl633x2hzfw9n2i34jjv64fvg";
|
||||
sha256 = "0zc8gmlzl2f38m1fj6pv2vm8ka7fkszd6hx2lb8gfv65vn3m4sk4";
|
||||
};
|
||||
|
||||
buildInputs = [ zeroc_mcpp bzip2 expat openssl lmdb ]
|
||||
buildInputs = [ zeroc_mcpp bzip2 expat libedit lmdb openssl ]
|
||||
++ lib.optionals stdenv.isDarwin [ darwin.cctools libiconv Security ];
|
||||
|
||||
NIX_CFLAGS_COMPILE = "-Wno-error=class-memaccess -Wno-error=deprecated-copy";
|
||||
|
@ -51,12 +53,25 @@ in stdenv.mkDerivation rec {
|
|||
)
|
||||
'';
|
||||
|
||||
buildFlags = [ "srcs" ]; # no tests; they require network
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
outputs = [ "out" "bin" "dev" ];
|
||||
|
||||
doCheck = true;
|
||||
checkInputs = with python3.pkgs; [ passlib ];
|
||||
checkPhase = with lib; let
|
||||
# these tests require network access so we need to skip them.
|
||||
brokenTests = map escapeRegex [
|
||||
"Ice/udp" "Glacier2" "IceGrid/simple" "IceStorm" "IceDiscovery/simple"
|
||||
];
|
||||
# matches CONFIGS flag in makeFlagsArray
|
||||
configFlag = optionalString cpp11 "--config=cpp11-shared";
|
||||
in ''
|
||||
runHook preCheck
|
||||
${python3.interpreter} ./cpp/allTests.py ${configFlag} --rfilter='${concatStringsSep "|" brokenTests}'
|
||||
runHook postCheck
|
||||
'';
|
||||
|
||||
postInstall = ''
|
||||
mkdir -p $bin $dev/share
|
||||
mv $out/bin $bin
|
||||
|
@ -66,7 +81,7 @@ in stdenv.mkDerivation rec {
|
|||
meta = with lib; {
|
||||
homepage = "https://www.zeroc.com/ice.html";
|
||||
description = "The internet communications engine";
|
||||
license = licenses.gpl2;
|
||||
license = licenses.gpl2Only;
|
||||
platforms = platforms.unix;
|
||||
maintainers = with maintainers; [ abbradar ];
|
||||
};
|
||||
|
|
|
@ -0,0 +1,20 @@
|
|||
diff --git a/test/Glacier2/dynamicFiltering/TestControllerI.h b/test/Glacier2/dynamicFiltering/TestControllerI.h
|
||||
index 7e21639..1279200 100644
|
||||
--- a/test/Glacier2/dynamicFiltering/TestControllerI.h
|
||||
+++ b/test/Glacier2/dynamicFiltering/TestControllerI.h
|
||||
@@ -21,13 +21,12 @@ struct SessionTuple
|
||||
{
|
||||
Glacier2::SessionPrx session;
|
||||
Glacier2::SessionControlPrx sessionControl;
|
||||
- bool configured;
|
||||
+ bool configured = false;
|
||||
|
||||
SessionTuple() {}
|
||||
SessionTuple(Glacier2::SessionPrx s, Glacier2::SessionControlPrx control):
|
||||
session(s),
|
||||
- sessionControl(control),
|
||||
- configured(false)
|
||||
+ sessionControl(control)
|
||||
{}
|
||||
|
||||
SessionTuple&
|
Loading…
Reference in a new issue