diff options
author | Rick van Schijndel <rol3517@gmail.com> | 2021-11-23 19:15:33 +0100 |
---|---|---|
committer | Rick van Schijndel <rol3517@gmail.com> | 2021-11-23 19:15:33 +0100 |
commit | 065992e4f88361938844e37decbe471228566bae (patch) | |
tree | 9ee45942e3a0b78277b5b715266f4bb90e58ddd0 | |
parent | e8ecc402a5ec3140a8484608fdecc01462af11f3 (diff) | |
download | nixpkgs-065992e4f88361938844e37decbe471228566bae.tar nixpkgs-065992e4f88361938844e37decbe471228566bae.tar.gz nixpkgs-065992e4f88361938844e37decbe471228566bae.tar.bz2 nixpkgs-065992e4f88361938844e37decbe471228566bae.tar.lz nixpkgs-065992e4f88361938844e37decbe471228566bae.tar.xz nixpkgs-065992e4f88361938844e37decbe471228566bae.tar.zst nixpkgs-065992e4f88361938844e37decbe471228566bae.zip |
mosquitto: use libwebsockets 4.x
This requires us to enable LWS_WITH_EXTERNAL_POLL. Since only mosquitto needs that and upstream discourages enabling it, we'll just do it in an override in mosquitto.
-rw-r--r-- | pkgs/development/libraries/libwebsockets/default.nix | 5 | ||||
-rw-r--r-- | pkgs/servers/mqtt/mosquitto/default.nix | 10 |
2 files changed, 12 insertions, 3 deletions
diff --git a/pkgs/development/libraries/libwebsockets/default.nix b/pkgs/development/libraries/libwebsockets/default.nix index 15bf77d2fc6..faf6acd40b9 100644 --- a/pkgs/development/libraries/libwebsockets/default.nix +++ b/pkgs/development/libraries/libwebsockets/default.nix @@ -5,6 +5,8 @@ , openssl , zlib , libuv +# External poll is required for e.g. mosquitto, but discouraged by the maintainer. +, withExternalPoll ? false }: let @@ -29,7 +31,8 @@ let "-DLWS_WITH_SOCKS5=ON" # Required since v4.2.0 "-DLWS_BUILD_HASH=no_hash" - ] ++ lib.optional (stdenv.hostPlatform != stdenv.buildPlatform) "-DLWS_WITHOUT_TESTAPPS=ON"; + ] ++ lib.optional (stdenv.hostPlatform != stdenv.buildPlatform) "-DLWS_WITHOUT_TESTAPPS=ON" + ++ lib.optional withExternalPoll "-DLWS_WITH_EXTERNAL_POLL=ON"; NIX_CFLAGS_COMPILE = lib.optionalString stdenv.cc.isGNU "-Wno-error=unused-but-set-variable"; diff --git a/pkgs/servers/mqtt/mosquitto/default.nix b/pkgs/servers/mqtt/mosquitto/default.nix index 67200f5515a..81821f1b7c4 100644 --- a/pkgs/servers/mqtt/mosquitto/default.nix +++ b/pkgs/servers/mqtt/mosquitto/default.nix @@ -8,13 +8,19 @@ , cjson , libuuid , libuv -, libwebsockets_3_1 +, libwebsockets , openssl , withSystemd ? stdenv.isLinux , systemd , fetchpatch }: +let + # Mosquitto needs external poll enabled in libwebsockets. + libwebsockets' = libwebsockets.override { + withExternalPoll = true; + }; +in stdenv.mkDerivation rec { pname = "mosquitto"; version = "2.0.12"; @@ -54,7 +60,7 @@ stdenv.mkDerivation rec { cjson libuuid libuv - libwebsockets_3_1 + libwebsockets' openssl ] ++ lib.optional withSystemd systemd; |