-
-
Notifications
You must be signed in to change notification settings - Fork 12.6k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
The compilation broke due to the flag `-Werror=int-in-bool-context` which caused several compilation errors with GCC v7. Disabling this warning manually with `-Wno-error` in `NIX_CFLAGS_COMPILE` should be fine. This package experienced several radical changes as the entire python build in `$src/management/python` was broken since the given Python interpreter missed several needed modules (including `pythonPackages.qpid-python`). As the CMake build tried to invoke the affected `setup.py` manually and patched the shebangs with `disutil` and caused non-functional executables, I split the package up into two parts, the actual `qpid-cpp` lib and the Python module that will be composed using `buildEnv`. Furthermore I added myself as maintainer for the package as the diff became quite huge and we should have more folks available to maintain this. See https://hydra.nixos.org/build/71519082/log See tickets #36453 and #31747
- Loading branch information
Showing
2 changed files
with
39 additions
and
18 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,33 +1,53 @@ | ||
{ stdenv, fetchurl, cmake, python2, boost, libuuid, ruby }: | ||
{ stdenv, fetchurl, cmake, python2, boost, libuuid, ruby, buildEnv, buildPythonPackage, qpid-python }: | ||
|
||
stdenv.mkDerivation rec { | ||
let | ||
name = "qpid-cpp-${version}"; | ||
|
||
version = "1.37.0"; | ||
|
||
src = fetchurl { | ||
url = "mirror://apache/qpid/cpp/${version}/${name}.tar.gz"; | ||
sha256 = "1s4hyi867i0lqn81c1crrk6fga1gmsv61675vjv5v41skz56lrsb"; | ||
}; | ||
|
||
buildInputs = [ cmake python2 boost libuuid ruby ]; | ||
|
||
# the subdir managementgen wants to install python stuff in ${python} and | ||
# the installation tries to create some folders in /var | ||
patchPhase = '' | ||
sed -i '/managementgen/d' CMakeLists.txt | ||
sed -i '/ENV/d' src/CMakeLists.txt | ||
''; | ||
|
||
NIX_CFLAGS_COMPILE = "-Wno-error=deprecated-declarations -Wno-error=unused-function"; | ||
|
||
meta = { | ||
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 = stdenv.lib.licenses.asl20; | ||
platforms = stdenv.lib.platforms.linux; | ||
maintainers = [ stdenv.lib.maintainers.cpages ]; | ||
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=unused-function" | ||
"-Wno-error=int-in-bool-context" | ||
]; | ||
}; | ||
|
||
python-frontend = buildPythonPackage { | ||
inherit name meta src; | ||
|
||
sourceRoot = "${name}/management/python"; | ||
|
||
propagatedBuildInputs = [ qpid-python ]; | ||
}; | ||
in buildEnv { | ||
name = "${name}-env"; | ||
paths = [ qpid-cpp python-frontend ]; | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters