diff --git a/pkgs/default.nix b/pkgs/default.nix index d1dc2626..accd1ca0 100644 --- a/pkgs/default.nix +++ b/pkgs/default.nix @@ -30,6 +30,7 @@ in # EPICS support modules support = recurseExtensible (_self: { + adsDriver = callPackage ./epnix/support/adsDriver {}; asyn = callPackage ./epnix/support/asyn {}; autoparamDriver = callPackage ./epnix/support/autoparamDriver {}; autosave = callPackage ./epnix/support/autosave {}; diff --git a/pkgs/epnix/support/adsDriver/default.nix b/pkgs/epnix/support/adsDriver/default.nix new file mode 100644 index 00000000..1be4ed89 --- /dev/null +++ b/pkgs/epnix/support/adsDriver/default.nix @@ -0,0 +1,36 @@ +{ + mkEpicsPackage, + fetchFromGitHub, + epnix, + boost, + epnixLib, + lib, +}: +mkEpicsPackage rec { + pname = "adsDriver"; + version = "3.1.0"; + + varname = "ADS_DRIVER"; + + src = fetchFromGitHub { + owner = "Cosylab"; + repo = pname; + rev = "v${version}"; + fetchSubmodules = true; + hash = "sha256-Ruzi+H8MmIgv23pzFXZlvkk3HtbDzQ9LTTVzmeGWrSI=="; + }; + + nativeBuildInputs = [boost]; + buildInputs = [boost]; + propagatedBuildInputs = with epnix.support; [ + asyn + autoparamDriver + ]; + + meta = { + description = "EPICS support module for integrating Beckhoff PLC using the ADS protocol"; + homepage = "https://epics.cosylab.com/documentation/adsDriver/"; + license = lib.licenses.mit; + maintainers = with epnixLib.maintainers; [synthetica]; + }; +}