public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-commits] repo/proj/guru:master commit in: sci-electronics/dsview/files/, sci-electronics/dsview/
@ 2020-08-18 11:25 Andrew Ammerlaan
  0 siblings, 0 replies; only message in thread
From: Andrew Ammerlaan @ 2020-08-18 11:25 UTC (permalink / raw
  To: gentoo-commits

commit:     3e2cceff9553d594e46f5be9e77dded1c2541641
Author:     Huang Rui <vowstar <AT> gmail <DOT> com>
AuthorDate: Tue Aug 18 10:04:53 2020 +0000
Commit:     Andrew Ammerlaan <andrewammerlaan <AT> riseup <DOT> net>
CommitDate: Tue Aug 18 10:04:53 2020 +0000
URL:        https://gitweb.gentoo.org/repo/proj/guru.git/commit/?id=3e2cceff

sci-electronics/dsview: new package

DSView is an GUI programe for supporting various instruments.
The patches under ${FILESDIR} pushed to upstream:
https://github.com/DreamSourceLab/DSView/pull/335

Package-Manager: Portage-3.0.3, Repoman-3.0.0
Signed-off-by: Huang Rui <vowstar <AT> gmail.com>

 sci-electronics/dsview/Manifest                    |  1 +
 sci-electronics/dsview/dsview-1.12.ebuild          | 98 ++++++++++++++++++++++
 .../dsview/files/dsview-1.01-viewport.patch        | 10 +++
 .../dsview/files/dsview-1.12-cmake.patch           | 26 ++++++
 .../dsview/files/dsview-1.12-desktop.patch         | 20 +++++
 sci-electronics/dsview/metadata.xml                | 20 +++++
 6 files changed, 175 insertions(+)

diff --git a/sci-electronics/dsview/Manifest b/sci-electronics/dsview/Manifest
new file mode 100644
index 0000000..61e0d4c
--- /dev/null
+++ b/sci-electronics/dsview/Manifest
@@ -0,0 +1 @@
+DIST dsview-1.12.tar.gz 8150237 BLAKE2B 0f746d0691f006d368cf9f40bf0c1b91223a7f6011d0ce55bdded7924ef940ecb18eec4bfe4cf842eea7eda85e97f3516a6f07e7e361eff991191e6d8bf7628c SHA512 a0b90d654ea64121540815627e8559c147a0b3bb77d10b65d98587b1f67dc3c0ed4d1c022cd686c31aab2879ee602eade69a02f32c5c9947a3bbdf1e7ab475dd

diff --git a/sci-electronics/dsview/dsview-1.12.ebuild b/sci-electronics/dsview/dsview-1.12.ebuild
new file mode 100644
index 0000000..9cd110b
--- /dev/null
+++ b/sci-electronics/dsview/dsview-1.12.ebuild
@@ -0,0 +1,98 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{6,7,8,9} )
+GITHUB_PN="DSView"
+
+inherit autotools cmake python-r1 xdg
+
+DESCRIPTION="An open source multi-function instrument"
+HOMEPAGE="
+	https://www.dreamsourcelab.com
+	https://github.com/DreamSourceLab/DSView
+"
+
+if [[ ${PV} == "9999" ]] ; then
+	inherit git-r3
+	EGIT_REPO_URI="https://github.com/DreamSourceLab/${GITHUB_PN}.git"
+else
+	SRC_URI="https://github.com/DreamSourceLab/${GITHUB_PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+	KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~m68k ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86"
+	S="${WORKDIR}/${GITHUB_PN}-${PV}"
+fi
+
+LICENSE="GPL-3"
+SLOT="0"
+
+RDEPEND="
+	dev-cpp/glibmm:2
+	dev-libs/boost
+	dev-libs/glib
+	dev-libs/libzip
+	dev-qt/qtcore:5
+	dev-qt/qtgui:5
+	dev-qt/qtwidgets:5
+	dev-qt/qtsvg:5
+	sci-libs/fftw:3.0
+	virtual/libusb:1
+"
+
+DEPEND="
+	${RDEPEND}
+"
+
+PATCHES=(
+	"${FILESDIR}"/${PN}-1.01-viewport.patch
+	"${FILESDIR}"/${PN}-1.12-desktop.patch
+	"${FILESDIR}"/${PN}-1.12-cmake.patch
+)
+
+src_prepare() {
+	default
+
+	local LIBDIR="/usr/$(get_libdir)"
+
+	grep -rl "/usr/local/lib" "${S}" | xargs sed -i "s@/usr/local/lib@${LIBDIR}@g" || die
+	grep -rl "/usr/local" "${S}" | xargs sed -i "s@/usr/local@/usr@g" || die
+	cd "${S}/libsigrok4DSL" || die
+	sh ./autogen.sh || die
+	cd "${S}/libsigrokdecode4DSL" || die
+	sh ./autogen.sh || die
+}
+
+src_configure() {
+	local LIBDIR="/usr/$(get_libdir)"
+
+	cd "${S}/libsigrok4DSL" || die
+	sh ./configure --libdir=${LIBDIR} --prefix=/usr || die
+	cd "${S}/libsigrokdecode4DSL" || die
+	sh ./configure --libdir=${LIBDIR} --prefix=/usr || die
+}
+
+src_compile() {
+	cd "${S}/libsigrok4DSL" || die
+	emake DESTDIR="${D}"
+	cd "${S}/libsigrokdecode4DSL" || die
+	emake DESTDIR="${D}"
+	cd "${S}"
+}
+
+src_install() {
+	local LIBDIR="/usr/$(get_libdir)"
+
+	cd "${S}/libsigrok4DSL" || die
+	emake DESTDIR="${D}" install
+	cd "${S}/libsigrokdecode4DSL" || die
+	emake DESTDIR="${D}" install
+	cd "${S}/DSView" || die
+
+	DESTDIR="${D}" \
+	PKG_CONFIG_PATH="${D}${LIBDIR}/pkgconfig" \
+	CFLAGS="-I${D}/usr/include" \
+	CXXFLAGS="-I${D}/usr/include" \
+	LDFLAGS="-L${D}${LIBDIR}" \
+	cmake -DCMAKE_INSTALL_PREFIX=/usr . || die
+	emake DESTDIR="${D}" install
+}

diff --git a/sci-electronics/dsview/files/dsview-1.01-viewport.patch b/sci-electronics/dsview/files/dsview-1.01-viewport.patch
new file mode 100644
index 0000000..6f8f49d
--- /dev/null
+++ b/sci-electronics/dsview/files/dsview-1.01-viewport.patch
@@ -0,0 +1,10 @@
+--- a/DSView/pv/view/viewport.cpp
++++ b/DSView/pv/view/viewport.cpp
+@@ -37,7 +37,7 @@
+ 
+ #include <QMouseEvent>
+ #include <QStyleOption>
+-
++#include <QPainterPath>
+ 
+ #include <math.h>

diff --git a/sci-electronics/dsview/files/dsview-1.12-cmake.patch b/sci-electronics/dsview/files/dsview-1.12-cmake.patch
new file mode 100644
index 0000000..4b01365
--- /dev/null
+++ b/sci-electronics/dsview/files/dsview-1.12-cmake.patch
@@ -0,0 +1,26 @@
+diff --git a/DSView/CMakeLists.txt b/DSView/CMakeLists.txt
+index 29f848d..554952f 100755
+--- a/DSView/CMakeLists.txt
++++ b/DSView/CMakeLists.txt
+@@ -420,15 +420,17 @@ set_target_properties(${PROJECT_NAME} PROPERTIES INSTALL_RPATH "${CMAKE_INSTALL_
+ #-------------------------------------------------------------------------------
+ 
+ # Install the executable.
+-install(TARGETS ${PROJECT_NAME} DESTINATION bin/)
++install(TARGETS ${PROJECT_NAME} DESTINATION bin)
+ install(DIRECTORY res DESTINATION share/${PROJECT_NAME})
+ install(FILES icons/logo.svg DESTINATION share/${PROJECT_NAME} RENAME logo.svg)
++install(FILES icons/logo.svg DESTINATION share/icons/hicolor/scalable/apps RENAME dsview.svg)
++install(FILES icons/logo.svg DESTINATION share/pixmaps RENAME dsview.svg)
+ install(FILES ../NEWS25 DESTINATION share/${PROJECT_NAME} RENAME NEWS25)
+ install(FILES ../NEWS31 DESTINATION share/${PROJECT_NAME} RENAME NEWS31)
+ install(FILES ../ug25.pdf DESTINATION share/${PROJECT_NAME} RENAME ug25.pdf)
+ install(FILES ../ug31.pdf DESTINATION share/${PROJECT_NAME} RENAME ug31.pdf)
+-install(FILES DreamSourceLab.rules DESTINATION /etc/udev/rules.d/)
+-install(FILES DSView.desktop DESTINATION /usr/share/applications/)
++install(FILES DreamSourceLab.rules DESTINATION /lib/udev/rules.d RENAME 60-dreamsourcelab.rules)
++install(FILES DSView.desktop DESTINATION /usr/share/applications RENAME dsview.desktop)
+ 
+ #===============================================================================
+ #= Packaging (handled by CPack)
+ 
\ No newline at end of file

diff --git a/sci-electronics/dsview/files/dsview-1.12-desktop.patch b/sci-electronics/dsview/files/dsview-1.12-desktop.patch
new file mode 100644
index 0000000..92e267e
--- /dev/null
+++ b/sci-electronics/dsview/files/dsview-1.12-desktop.patch
@@ -0,0 +1,20 @@
+diff --git a/DSView/DSView.desktop b/DSView/DSView.desktop
+index fba3202..e114324 100755
+--- a/DSView/DSView.desktop
++++ b/DSView/DSView.desktop
+@@ -1,9 +1,10 @@
+ [Desktop Entry]
+-Version=0.96
+-Exec=/usr/local/bin/DSView
++Type=Application
++Encoding=UTF-8
+ Name=DSView
+ Comment=GUI Program for DreamSourceLab USB-based Instruments
+-Icon=/usr/local/share/DSView/logo.png
+-Type=Application
++TryExec=DSView
++Exec=DSView
++Icon=dsview
+ Terminal=false
+-Categories=Development
++Categories=Development;Electronics;Qt;

diff --git a/sci-electronics/dsview/metadata.xml b/sci-electronics/dsview/metadata.xml
new file mode 100644
index 0000000..c58b17b
--- /dev/null
+++ b/sci-electronics/dsview/metadata.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+	<maintainer type="person">
+		<email>vowstar@gmail.com</email>
+		<name>Huang Rui</name>
+	</maintainer>
+	<upstream>
+		<remote-id type="github">DreamSourceLab/DSView</remote-id>
+	</upstream>
+	<longdescription lang="en">
+	DSView is an GUI programe for supporting various instruments from
+	DreamSourceLab, including logic analyzer, oscilloscope, etc. DSView is based
+	on sigrok project.
+	The sigrok project aims at creating a portable, cross-platform,
+	Free/Libre/Open-Source signal analysis software suite that supports various
+	device types (such as logic analyzers, oscilloscopes, multimeters, and
+	more).
+	</longdescription>
+</pkgmetadata>


^ permalink raw reply related	[flat|nested] only message in thread

only message in thread, other threads:[~2020-08-18 11:25 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2020-08-18 11:25 [gentoo-commits] repo/proj/guru:master commit in: sci-electronics/dsview/files/, sci-electronics/dsview/ Andrew Ammerlaan

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox