5662c24302
When -O2 from hardening does not redefine -O3 from CMake, the build fails with: src/qpid/broker/SelectorExpression.cpp: In member function ‘qpid::broker::Expression* qpid::broker::Parse::orExpression(qpid::broker::Tokeniser&)’: src/qpid/broker/SelectorExpression.cpp:1041:13: error: ‘*((void*)& s +17)’ may be used uninitialized in this function [-Werror=maybe-uninitialized] if (s[1]=='b' || s[1]=='B') {
55 lines
1.5 KiB
Nix
55 lines
1.5 KiB
Nix
{ stdenv, fetchurl, cmake, python2, boost, libuuid, ruby, buildEnv, buildPythonPackage, qpid-python }:
|
|
|
|
let
|
|
name = "qpid-cpp-${version}";
|
|
version = "1.37.0";
|
|
|
|
src = fetchurl {
|
|
url = "mirror://apache/qpid/cpp/${version}/${name}.tar.gz";
|
|
sha256 = "1s4hyi867i0lqn81c1crrk6fga1gmsv61675vjv5v41skz56lrsb";
|
|
};
|
|
|
|
meta = with stdenv.lib; {
|
|
homepage = http://qpid.apache.org;
|
|
repositories.git = git://git.apache.org/qpid.git;
|
|
repositories.svn = http://svn.apache.org/repos/asf/qpid;
|
|
description = "An AMQP message broker and a C++ messaging API";
|
|
license = licenses.asl20;
|
|
platforms = platforms.linux;
|
|
maintainers = with maintainers; [ cpages ma27 ];
|
|
};
|
|
|
|
qpid-cpp = stdenv.mkDerivation {
|
|
inherit src meta name;
|
|
|
|
nativeBuildInputs = [ cmake ];
|
|
buildInputs = [ boost libuuid ruby python2 ];
|
|
|
|
# the subdir managementgen wants to install python stuff in ${python} and
|
|
# the installation tries to create some folders in /var
|
|
postPatch = ''
|
|
sed -i '/managementgen/d' CMakeLists.txt
|
|
sed -i '/ENV/d' src/CMakeLists.txt
|
|
sed -i '/management/d' CMakeLists.txt
|
|
'';
|
|
|
|
NIX_CFLAGS_COMPILE = [
|
|
"-Wno-error=deprecated-declarations"
|
|
"-Wno-error=int-in-bool-context"
|
|
"-Wno-error=maybe-uninitialized"
|
|
"-Wno-error=unused-function"
|
|
];
|
|
};
|
|
|
|
python-frontend = buildPythonPackage {
|
|
inherit name meta src;
|
|
|
|
sourceRoot = "${name}/management/python";
|
|
|
|
propagatedBuildInputs = [ qpid-python ];
|
|
};
|
|
in buildEnv {
|
|
name = "${name}-env";
|
|
paths = [ qpid-cpp python-frontend ];
|
|
}
|