Merge pull request #172408 from tpwrules/upgrade-aravis

aravis: 0.6.4 -> 0.8.21, add myself as maintainer
main
Rick van Schijndel 2 years ago committed by GitHub
commit d9f2395af1
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
  1. 133
      pkgs/development/libraries/aravis/default.nix
  2. 4
      pkgs/top-level/all-packages.nix

@ -1,85 +1,76 @@
{ lib, stdenv, fetchFromGitHub, autoreconfHook, pkg-config, gtk-doc, intltool
, audit, glib, libusb1, libxml2
, wrapGAppsHook
, gstreamer
, gst-plugins-base
, gst-plugins-good
, gst-plugins-bad
, libnotify
, gnome
{ lib
, stdenv
, fetchFromGitHub
, meson
, ninja
, pkg-config
, gi-docgen
, glib
, libxml2
, gobject-introspection
, enableGstPlugin ? true
, enableViewer ? true
, gst_all_1
, gtk3
, wrapGAppsHook
, enableUsb ? true
, libusb1
, enablePacketSocket ? true
, enableViewer ? true
, enableGstPlugin ? true
, enableCppTest ? false
, enableFastHeartbeat ? false
, enableAsan ? false
}:
let
gstreamerAtLeastVersion1 =
lib.all
(pkg: pkg != null && lib.versionAtLeast (lib.getVersion pkg) "1.0")
[ gstreamer gst-plugins-base gst-plugins-good gst-plugins-bad ];
in
assert enableViewer -> enableGstPlugin;
assert enableViewer -> gstreamerAtLeastVersion1;
stdenv.mkDerivation rec {
pname = "aravis";
version = "0.6.4";
src = fetchFromGitHub {
owner = "AravisProject";
repo = pname;
rev= "ARAVIS_${builtins.replaceStrings ["."] ["_"] version}";
sha256 = "18fnliks661kzc3g8v08hcaj18hjid8b180d6s9gwn0zgv4g374w";
};
assert enableGstPlugin -> gst_all_1 != null;
assert enableViewer -> enableGstPlugin;
assert enableViewer -> gtk3 != null;
assert enableViewer -> wrapGAppsHook != null;
outputs = [ "bin" "dev" "out" "lib" ];
stdenv.mkDerivation rec {
pname = "aravis";
version = "0.8.21";
nativeBuildInputs = [
autoreconfHook
pkg-config
intltool
gtk-doc
] ++ lib.optional enableViewer wrapGAppsHook;
src = fetchFromGitHub {
owner = "AravisProject";
repo = pname;
rev = version;
sha256 = "sha256-z4fuo8tVyHf2Bw73ZfAEpAYmzbr9UIzEWPC5f95wnD8=";
};
buildInputs =
[ glib libxml2 ]
++ lib.optional enableUsb libusb1
++ lib.optional enablePacketSocket audit
++ lib.optionals (enableViewer || enableGstPlugin) [ gstreamer gst-plugins-base gst-plugins-good gst-plugins-bad ]
++ lib.optionals (enableViewer) [ libnotify gtk3 gnome.adwaita-icon-theme ];
outputs = [ "bin" "dev" "out" "lib" ];
preAutoreconf = "./autogen.sh";
nativeBuildInputs = [
meson
ninja
pkg-config
gi-docgen
] ++ lib.optional enableViewer wrapGAppsHook;
configureFlags =
lib.optional enableUsb "--enable-usb"
++ lib.optional enablePacketSocket "--enable-packet-socket"
++ lib.optional enableViewer "--enable-viewer"
++ lib.optional enableGstPlugin
(if gstreamerAtLeastVersion1 then "--enable-gst-plugin" else "--enable-gst-0.10-plugin")
++ lib.optional enableCppTest "--enable-cpp-test"
++ lib.optional enableFastHeartbeat "--enable-fast-heartbeat"
++ lib.optional enableAsan "--enable-asan";
buildInputs =
[ glib libxml2 gobject-introspection ]
++ lib.optional enableUsb libusb1
++ lib.optionals (enableViewer || enableGstPlugin) (with gst_all_1; [ gstreamer gst-plugins-base (gst-plugins-good.override { gtkSupport = true; }) gst-plugins-bad ])
++ lib.optionals (enableViewer) [ gtk3 ];
postPatch = ''
ln -s ${gtk-doc}/share/gtk-doc/data/gtk-doc.make .
'';
mesonFlags = [
] ++ lib.optional enableFastHeartbeat "-Dfast-heartbeat=enabled"
++ lib.optional (!enableGstPlugin) "-Dgst-plugin=disabled"
++ lib.optional (!enableViewer) "-Dviewer=disabled"
++ lib.optional (!enableUsb) "-Dviewer=disabled"
++ lib.optional (!enablePacketSocket) "-Dpacket-socket=disabled";
doCheck = true;
doCheck = true;
meta = {
description = "Library for video acquisition using GenICam cameras";
longDescription = ''
Implements the gigabit ethernet and USB3 protocols used by industrial cameras.
'';
homepage = "https://aravisproject.github.io/docs/aravis-0.5";
license = lib.licenses.lgpl2;
maintainers = [];
platforms = lib.platforms.unix;
};
}
meta = {
description = "Library for video acquisition using GenICam cameras";
longDescription = ''
Implements the gigabit ethernet and USB3 protocols used by industrial cameras.
'';
# the documentation is the best working homepage that's not the Github repo
homepage = "https://aravisproject.github.io/docs/aravis-0.8";
license = lib.licenses.lgpl2;
maintainers = with lib.maintainers; [ tpw_rules ];
platforms = lib.platforms.unix;
};
}

@ -16542,9 +16542,7 @@ with pkgs;
aprutil = callPackage ../development/libraries/apr-util { };
aravis = callPackage ../development/libraries/aravis {
inherit (gst_all_1) gstreamer gst-plugins-base gst-plugins-good gst-plugins-bad;
};
aravis = callPackage ../development/libraries/aravis { };
arb = callPackage ../development/libraries/arb {};

Loading…
Cancel
Save