mirror of
https://git.rwth-aachen.de/acs/public/villas/node/
synced 2025-03-09 00:00:00 +01:00
nix: Update to unstable use new nixpkgs-version of libiec61850, lib60870 and libdatachannel
Signed-off-by: Steffen Vogel <post@steffenvogel.de>
This commit is contained in:
parent
5097dfc165
commit
1ae5da2079
7 changed files with 14 additions and 163 deletions
64
flake.lock
generated
64
flake.lock
generated
|
@ -17,71 +17,18 @@
|
|||
"type": "gitlab"
|
||||
}
|
||||
},
|
||||
"lib60870": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1672404819,
|
||||
"narHash": "sha256-9o+gWQbpCJb+UZzPNmzGqpWD0QbGjg41is/f1POUEQs=",
|
||||
"owner": "mz-automation",
|
||||
"repo": "lib60870",
|
||||
"rev": "53a6b3c1cf3023e51cf81763b1ccf048edcd1c64",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "mz-automation",
|
||||
"ref": "v2.3.2",
|
||||
"repo": "lib60870",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"libdatachannel": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1683797946,
|
||||
"narHash": "sha256-kSK+5gFMG6tq89R1m08gNBKPdwyR/mLEDhWXQ/uk34o=",
|
||||
"ref": "refs/tags/v0.18.4",
|
||||
"rev": "7a5e01071ae635e06f175233abd11d623f09cbb8",
|
||||
"revCount": 2459,
|
||||
"submodules": true,
|
||||
"type": "git",
|
||||
"url": "https://github.com/paullouisageneau/libdatachannel.git"
|
||||
},
|
||||
"original": {
|
||||
"ref": "refs/tags/v0.18.4",
|
||||
"submodules": true,
|
||||
"type": "git",
|
||||
"url": "https://github.com/paullouisageneau/libdatachannel.git"
|
||||
}
|
||||
},
|
||||
"libiec61850": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1647022552,
|
||||
"narHash": "sha256-1vT0ry6IJqilpM7g9l7fx+ET+Dyo24WAyWqTyPM9nQw=",
|
||||
"owner": "mz-automation",
|
||||
"repo": "libiec61850",
|
||||
"rev": "210cf30897631fe2006ac50483caf8fd616622a2",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "mz-automation",
|
||||
"ref": "v1.5.1",
|
||||
"repo": "libiec61850",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs": {
|
||||
"locked": {
|
||||
"lastModified": 1709884566,
|
||||
"narHash": "sha256-NSYJg2sfdO/XS3L8XN/59Zhzn0dqWm7XtVnKI2mHq3w=",
|
||||
"lastModified": 1711370797,
|
||||
"narHash": "sha256-2xu0jVSjuKhN97dqc4bVtvEH52Rwh6+uyI1XCnzoUyI=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "2be119add7b37dc535da2dd4cba68e2cf8d1517e",
|
||||
"rev": "c726225724e681b3626acc941c6f95d2b0602087",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "NixOS",
|
||||
"ref": "release-23.11",
|
||||
"ref": "nixpkgs-unstable",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
|
@ -89,9 +36,6 @@
|
|||
"root": {
|
||||
"inputs": {
|
||||
"ethercat": "ethercat",
|
||||
"lib60870": "lib60870",
|
||||
"libdatachannel": "libdatachannel",
|
||||
"libiec61850": "libiec61850",
|
||||
"nixpkgs": "nixpkgs"
|
||||
}
|
||||
}
|
||||
|
|
32
flake.nix
32
flake.nix
|
@ -4,30 +4,12 @@
|
|||
description = "VILLASnode is a client/server application to connect simulation equipment and software.";
|
||||
|
||||
inputs = {
|
||||
nixpkgs.url = "github:NixOS/nixpkgs/release-23.11";
|
||||
nixpkgs.url = "github:NixOS/nixpkgs/nixpkgs-unstable";
|
||||
|
||||
ethercat = {
|
||||
url = "gitlab:etherlab.org/ethercat/stable-1.5";
|
||||
flake = false;
|
||||
};
|
||||
|
||||
lib60870 = {
|
||||
url = "github:mz-automation/lib60870/v2.3.2";
|
||||
flake = false;
|
||||
};
|
||||
|
||||
libdatachannel = {
|
||||
type = "git";
|
||||
url = "https://github.com/paullouisageneau/libdatachannel.git";
|
||||
ref = "refs/tags/v0.18.4";
|
||||
submodules = true;
|
||||
flake = false;
|
||||
};
|
||||
|
||||
libiec61850 = {
|
||||
url = "github:mz-automation/libiec61850/v1.5.1";
|
||||
flake = false;
|
||||
};
|
||||
};
|
||||
|
||||
outputs = {
|
||||
|
@ -107,18 +89,6 @@
|
|||
ethercat = pkgs.callPackage (nixDir + "/ethercat.nix") {
|
||||
src = inputs.ethercat;
|
||||
};
|
||||
|
||||
lib60870 = pkgs.callPackage (nixDir + "/lib60870.nix") {
|
||||
src = inputs.lib60870;
|
||||
};
|
||||
|
||||
libdatachannel = pkgs.callPackage (nixDir + "/libdatachannel.nix") {
|
||||
src = inputs.libdatachannel;
|
||||
};
|
||||
|
||||
libiec61850 = pkgs.callPackage (nixDir + "/libiec61850.nix") {
|
||||
src = inputs.libiec61850;
|
||||
};
|
||||
};
|
||||
in {
|
||||
# Standard flake attribute for normal packages (not cross-compiled)
|
||||
|
|
|
@ -59,3 +59,6 @@
|
|||
#cmakedefine REDISPP_WITH_TLS
|
||||
#cmakedefine REDISPP_WITH_URI
|
||||
#cmakedefine RABBITMQ_C_NEW_INCLUDE_DIR
|
||||
|
||||
/* Library versions */
|
||||
#define RTC_VERSION ((@LibDataChannel_VERSION_MAJOR@ << 16) | (@LibDataChannel_VERSION_MINOR@ << 8) | (@LibDataChannel_VERSION_PATCH@ << 0))
|
||||
|
|
|
@ -14,6 +14,7 @@
|
|||
#include <rtc/peerconnection.hpp>
|
||||
#include <rtc/rtc.hpp>
|
||||
#include <villas/config.hpp>
|
||||
#include <villas/node/config.hpp>
|
||||
#include <villas/log.hpp>
|
||||
#include <villas/nodes/webrtc/signaling_client.hpp>
|
||||
#include <villas/signal_list.hpp>
|
||||
|
@ -25,15 +26,19 @@
|
|||
* But C++ ADL based overload set construction does not find these operators,
|
||||
* if these are invoked in the spdlog/fmt libraries.
|
||||
*
|
||||
* See this issue for a short explaination of ADL errors:
|
||||
* See this issue for a short explanation of ADL errors:
|
||||
* https://github.com/gabime/spdlog/issues/1227#issuecomment-532009129
|
||||
*
|
||||
* Adding the global ::operator<< overload set to the namespace rtc where
|
||||
* the data structures are defined, allows ADL to pick these up in spdlog/fmt.
|
||||
*
|
||||
* Since libdatachannel 0.20, operator<< has been moved into the rtc namespace.
|
||||
*/
|
||||
#if RTC_VERSION <= 0x001400
|
||||
namespace rtc {
|
||||
using ::operator<<;
|
||||
}
|
||||
#endif
|
||||
|
||||
#ifndef FMT_LEGACY_OSTREAM_FORMATTER
|
||||
template <>
|
||||
|
|
|
@ -1,21 +0,0 @@
|
|||
# SPDX-FileCopyrightText: 2023 OPAL-RT Germany GmbH
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
{
|
||||
cmake,
|
||||
lib,
|
||||
stdenv,
|
||||
src,
|
||||
}:
|
||||
stdenv.mkDerivation {
|
||||
pname = "lib60870";
|
||||
version = "villas";
|
||||
src = src;
|
||||
separateDebugInfo = true;
|
||||
nativeBuildInputs = [cmake];
|
||||
preConfigure = "cd lib60870-C";
|
||||
meta = with lib; {
|
||||
description = "implementation of the IEC 60870-5-101/104 protocol";
|
||||
homepage = "https://libiec61850.com/";
|
||||
license = licenses.gpl3;
|
||||
};
|
||||
}
|
|
@ -1,30 +0,0 @@
|
|||
# SPDX-FileCopyrightText: 2023 OPAL-RT Germany GmbH
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
{
|
||||
cmake,
|
||||
lib,
|
||||
libnice,
|
||||
libpcap,
|
||||
pkg-config,
|
||||
stdenv,
|
||||
src,
|
||||
openssl,
|
||||
}:
|
||||
stdenv.mkDerivation {
|
||||
pname = "libdatachannel";
|
||||
version = "villas";
|
||||
src = src;
|
||||
separateDebugInfo = true;
|
||||
nativeBuildInputs = [cmake pkg-config];
|
||||
buildInputs = [libnice libpcap openssl];
|
||||
cmakeFlags = [
|
||||
"-DUSE_NICE=ON" # Use libnice for better protocol support
|
||||
"-DNO_WEBSOCKET=ON" # VILLASnode uses libwebsockets instead
|
||||
"-DNO_MEDIA=ON" # VILLASnode does not use media transport features
|
||||
];
|
||||
meta = with lib; {
|
||||
description = "C/C++ WebRTC network library featuring Data Channels, Media Transport, and WebSockets";
|
||||
homepage = "https://libdatachannel.org/";
|
||||
license = licenses.mpl20;
|
||||
};
|
||||
}
|
|
@ -1,20 +0,0 @@
|
|||
# SPDX-FileCopyrightText: 2023 OPAL-RT Germany GmbH
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
{
|
||||
cmake,
|
||||
lib,
|
||||
stdenv,
|
||||
src,
|
||||
}:
|
||||
stdenv.mkDerivation {
|
||||
pname = "libiec61850";
|
||||
version = "villas";
|
||||
src = src;
|
||||
separateDebugInfo = true;
|
||||
nativeBuildInputs = [cmake];
|
||||
meta = with lib; {
|
||||
description = "open-source library for the IEC 61850 protocols";
|
||||
homepage = "https://libiec61850.com/";
|
||||
license = licenses.gpl3;
|
||||
};
|
||||
}
|
Loading…
Add table
Reference in a new issue