[Dist] Separate filter subplugin subpackages
authorMyungJoo Ham <myungjoo.ham@samsung.com>
Thu, 21 Feb 2019 06:49:43 +0000 (15:49 +0900)
committerMyungJoo Ham <myungjoo.ham@samsung.com>
Wed, 27 Feb 2019 04:30:00 +0000 (13:30 +0900)
This concludes the EPIC item of #786.

Signed-off-by: MyungJoo Ham <myungjoo.ham@samsung.com>
debian/control
debian/nnstreamer-tensorflow-lite.install [new file with mode: 0644]
debian/nnstreamer-tensorflow.install [new file with mode: 0644]
debian/nnstreamer.install
packaging/nnstreamer.spec

index 9ff65c4..dd73792 100644 (file)
@@ -20,6 +20,20 @@ Depends: ${shlibs:Depends}, ${misc:Depends}
 Description: NNStreamer plugins for Gstreamer
  Gstreamer plugins, "NNStreamer", provides access to nerual network frameworks for media streams
 
+Package: nnstreamer-tensorflow
+Architecture: amd64 arm64
+Multi-Arch: same
+Depends: nnstreamer, tensorflow, ${shlibs:Depends}, ${misc:Depends}
+Description: NNStreamer TensorFlow Support
+ This package allows nnstreamer to support tensorflow. Note that users must make sure that they have installed Tensorflow with compatible C-API (recommended to use the same version). However, having different options (e.g., GPU mode) should not affect the compatibility. When we have stable C-API from Tensorflow, we will release corresponding subplugin as well.
+
+Package: nnstreamer-tensorflow-lite
+Architecture: any
+Multi-Arch: same
+Depends: nnstreamer, ${shlibs:Depends}, ${misc:Depends}
+Description: NNStreamer TensorFlow Lite Support
+ This package allows nnstreamer to support tensorflow-lite.
+
 Package: nnstreamer-dev
 Architecture: any
 Multi-Arch: same
diff --git a/debian/nnstreamer-tensorflow-lite.install b/debian/nnstreamer-tensorflow-lite.install
new file mode 100644 (file)
index 0000000..2266d60
--- /dev/null
@@ -0,0 +1 @@
+/usr/lib/nnstreamer/filters/libnnstreamer_filter_tensorflow-lite.so
diff --git a/debian/nnstreamer-tensorflow.install b/debian/nnstreamer-tensorflow.install
new file mode 100644 (file)
index 0000000..c38deb5
--- /dev/null
@@ -0,0 +1 @@
+/usr/lib/nnstreamer/filters/libnnstreamer_filter_tensorflow.so
index 8da9627..f040b3b 100644 (file)
@@ -1,4 +1,3 @@
-/usr/lib/nnstreamer/filters/libnnstreamer_filter_*.so
 /usr/lib/nnstreamer/decoders/libnnstreamer_decoder_*.so
 /usr/lib/*/gstreamer-1.0/*.so
 /etc/nnstreamer.ini
index 561eca3..4ea2997 100644 (file)
@@ -63,6 +63,26 @@ HTML pages of lcov results of NNStreamer generated during rpmbuild
 NNStreamer is a set of gstreamer plugins to support general neural networks
 and their plugins in a gstreamer stream.
 
+# for tensorflow
+%ifarch x86_64 aarch64
+%package tensorflow
+Summary:       NNStreamer TensorFlow Support
+Requires:      nnstreamer = %{version}-%{release}
+Requires:      tensorflow
+%description tensorflow
+NNStreamer's tensor_fliter subplugin of TensorFlow.
+It uses C-API of tensorflow, which is not yet stable as of 1.1x.
+Thus, the user needs to check the version of Tensorflow with the
+Tensorflow used for building this package.
+%endif
+
+%package tensorflow-lite
+Summary:       NNStreamer TensorFlow Lite Support
+Requires:      nnstreamer = %{version}-%{release}
+# tensorflow-lite provides .a file and it's embedded into the subplugin. No dep to tflite.
+%description tensorflow-lite
+NNStreamer's tensor_fliter subplugin of TensorFlow Lite.
+
 %package devel
 Summary:       Development package for custom tensor operator developers (tensor_filter/custom)
 Requires:      nnstreamer = %{version}-%{release}
@@ -172,11 +192,21 @@ popd
 %manifest nnstreamer.manifest
 %defattr(-,root,root,-)
 %license LICENSE
-%{_prefix}/lib/nnstreamer/filters/libnnstreamer_filter_*.so
 %{_prefix}/lib/nnstreamer/decoders/libnnstreamer_decoder_*.so
 %{gstlibdir}/*.so
 %{_sysconfdir}/nnstreamer.ini
 
+# for tensorflow
+%ifarch x86_64 aarch64
+%files tensorflow
+%defattr(-,root,root,-)
+%{_prefix}/lib/nnstreamer/filters/libnnstreamer_filter_tensorflow.so
+%endif
+
+%files tensorflow-lite
+%defattr(-,root,root,-)
+%{_prefix}/lib/nnstreamer/filters/libnnstreamer_filter_tensorflow-lite.so
+
 %files devel
 %{_includedir}/nnstreamer/*
 %{_libdir}/*.a