Unverified Commit 88bbdb44 authored by Pol Dellaiera's avatar Pol Dellaiera Committed by GitHub
Browse files

ulfius: fix dependencies propagation. (#478129)

parents fb29c541 514beaba
Loading
Loading
Loading
Loading
+0 −14
Original line number Diff line number Diff line
@@ -16,13 +16,6 @@
  libuv,
  libxkbcommon,
  ulfius,
  openssl,
  gnutls,
  jansson,
  zlib,
  libmicrohttpd,
  orcania,
  yder,
  yaml-cpp,
  udevCheckHook,
  versionCheckHook,
@@ -73,22 +66,15 @@ stdenv.mkDerivation (finalAttrs: {

  buildInputs = [
    bluez
    gnutls
    i2c-tools
    jansson
    libX11
    libgpiod_1
    libinput
    libmicrohttpd
    libusb1
    libuv
    libxkbcommon
    openssl
    orcania
    ulfius
    yaml-cpp
    yder
    zlib
  ];

  preConfigure = ''
+29 −8
Original line number Diff line number Diff line
@@ -2,7 +2,18 @@
  lib,
  stdenv,
  fetchFromGitHub,

  withJson ? true,
  withHttps ? true,
  withWebsockets ? true,
  withCurl ? true,
  withLogger ? true,
  withUwsc ? withWebsockets, # uwsc depends on websockets

  # nativeBuildInputs
  cmake,

  # Optional dependencies
  curl,
  gnutls,
  jansson,
@@ -29,14 +40,24 @@ stdenv.mkDerivation (finalAttrs: {
    cmake
  ];

  buildInputs = [
    curl
    gnutls
    jansson
  propagatedBuildInputs = [
    libmicrohttpd
    orcania
    yder
    zlib
  ]
  ++ lib.optionals withJson [ jansson ]
  ++ lib.optionals withCurl [ curl ]
  ++ lib.optionals (withHttps || withWebsockets) [ gnutls ]
  ++ lib.optionals withLogger [ yder ]
  ++ lib.optionals withWebsockets [ zlib ];

  cmakeFlags = [
    (lib.cmakeBool "WITH_CURL" withCurl)
    (lib.cmakeBool "WITH_JANSSON" withJson)
    (lib.cmakeBool "WITH_GNUTLS" (withHttps || withWebsockets))
    (lib.cmakeBool "WITH_YDER" withLogger)
    (lib.cmakeBool "BUILD_UWSC" (withUwsc && withWebsockets))
    (lib.cmakeBool "WITH_WEBSOCKET" withWebsockets)
    (lib.cmakeBool "WITH_WEBSOCKET_MESSAGE_LIST" withWebsockets)
  ];

  meta = {
@@ -45,7 +66,7 @@ stdenv.mkDerivation (finalAttrs: {
    changelog = "https://github.com/babelouest/ulfius/blob/${finalAttrs.src.tag}/CHANGELOG.md";
    license = lib.licenses.lgpl21Only;
    maintainers = with lib.maintainers; [ drupol ];
    mainProgram = "uwsc";
    platforms = lib.platforms.all;
  };
  }
  // lib.optionalAttrs (withUwsc && withWebsockets) { mainProgram = "uwsc"; };
})