[arch-commits] Commit in sdrangel/trunk (4 files)

Filipe Laíns ffy00 at archlinux.org
Fri Nov 29 10:38:25 UTC 2019


    Date: Friday, November 29, 2019 @ 10:38:24
  Author: ffy00
Revision: 534340

upgpkg: sdrangel 4.12.1-1

Added:
  sdrangel/trunk/sdrangel-sse4.1.install
Modified:
  sdrangel/trunk/PKGBUILD
  sdrangel/trunk/sdrangel.install
Deleted:
  sdrangel/trunk/sdrangel-opencv4.patch

-------------------------+
 PKGBUILD                |   69 +++++++++++++++++++++++++-----------
 sdrangel-opencv4.patch  |   87 ----------------------------------------------
 sdrangel-sse4.1.install |    4 ++
 sdrangel.install        |    2 -
 4 files changed, 54 insertions(+), 108 deletions(-)

Modified: PKGBUILD
===================================================================
--- PKGBUILD	2019-11-29 10:38:19 UTC (rev 534339)
+++ PKGBUILD	2019-11-29 10:38:24 UTC (rev 534340)
@@ -1,17 +1,17 @@
-# Maintainer: Filipe Laíns (FFY00) <filipe.lains at gmail.com>
+# Maintainer: Filipe Laíns (FFY00) <lains at archlinux.org>
 # Contributor: Michal Krenek (Mikos) <m.krenek at gmail.com>
 
-pkgname=sdrangel
-pkgver=4.11.4
-pkgrel=2
-pkgdesc='Qt5/OpenGL SDR and signal analyzer frontend'
+pkgbase=sdrangel
+pkgname=($pkgbase $pkgbase-sse4.1)
+pkgver=4.12.1
+pkgrel=1
+pkgdesc='Open Source Qt5 / OpenGL 3.0+ SDR and signal analyzer frontend to various hardware'
 arch=('x86_64')
 url='https://github.com/f4exb/sdrangel'
 license=('GPL3')
-depends=('pkg-config' 'log4cpp' 'opencv' 'fftw'  'ffmpeg'
-         'cm256cc' 'dsdcc' 'pulseaudio' 'lz4' 'nanomsg'
-         'qt5-base' 'qt5-tools' 'qt5-multimedia' 'qt5-websockets')
-makedepends=('cmake' 'ffmpeg' 'airspy' 'bladerf' 'hackrf' 'limesuite' 'rtl-sdr' 'soapysdr' 'boost') # 'codec2')
+depends=('pkg-config' 'log4cpp' 'fftw' 'ffmpeg' 'cm256cc' 'dsdcc' 'pulseaudio' 'lz4' 'nanomsg'
+         'qt5-base' 'qt5-tools' 'qt5-multimedia' 'qt5-websockets' 'opencv')
+makedepends=('cmake' 'doxygen' 'graphviz' 'ffmpeg' 'airspy' 'bladerf' 'hackrf' 'limesuite' 'rtl-sdr' 'soapysdr' 'boost') # 'codec2')
 optdepends=('ffmpeg: DATV demodulator'
             'rtl-sdr: RTLSDR support'
             'hackrf: HackRF support'
@@ -20,34 +20,63 @@
             'airspy: AirSPY support'
             'soapysdr: SoapySDR backend')
 #            'codec2: Codec2 speech codec support')
-install=$pkgname.install
-source=("$pkgname-$pkgver.tar.gz::$url/archive/v$pkgver.tar.gz"
-        'sdrangel-opencv4.patch')
-sha512sums=('e08ea6c3973d060f19292f8e4c6490f9e51f8b5ee915107d6e4442f6c41b60dd4cf52affa15c98c9d6b1c7c1248f35bcb1bfccb15c2f184ec2e7e4049a0b4fb2'
-            'bc9519a0f08cc6372b3290ed475e3a70b71d4a29f2cedefd349f9ba220a9d446c05c02ca648f068ee298612b85faeda96d45d186120555382b2df99596576e7e')
+source=("$pkgname-$pkgver.tar.gz::$url/archive/v$pkgver.tar.gz")
+sha512sums=('5baa5fa3c84f17c83fe153091c22df2c7119a3ebb0b3d95513706edd9b47f35209291390657b9265c5c1faa56b4fdf437884dac34fb808e17d1a6fb5d9a57251')
 
 prepare() {
-  cd $pkgname-$pkgver
+  # Fix ffmpeg version detection
+  sed -i "s|COMMAND ffmpeg -version COMMAND grep ffmpeg COMMAND cut -d\\  -f3 COMMAND tr -d '\\n' OUTPUT_VARIABLE FFMPEG_VERSION|COMMAND ffmpeg -version COMMAND sed -e '/^ffmpeg/!d' -e 's at ffmpeg version [\|n]@@' -e 's@ Copyright.*@@' OUTPUT_VARIABLE FFMPEG_VERSION|" \
+           $pkgbase-$pkgver/plugins/channelrx/CMakeLists.txt
 
-  patch -p1 -i ../sdrangel-opencv4.patch # Fix build with openCV 4
+  # Remove plugins that are causing problems, if you want them enabled send a patch
+  sed -i 's|add_subdirectory(modatv)||' $pkgbase-$pkgver/plugins/channeltx/CMakeLists.txt
+
+  mkdir $pkgbase-$pkgver/build
+  cp -r $pkgbase-$pkgver $pkgbase-sse4.1-$pkgver
 }
 
 build() {
-  mkdir -p $pkgname-$pkgver/build
-  cd $pkgname-$pkgver/build
+  echo 'Building sdrangel...'
+  cd "$srcdir"/$pkgbase-$pkgver/build
 
   cmake .. \
     -DCMAKE_BUILD_TYPE=Release \
     -DCMAKE_INSTALL_PREFIX=/usr \
     -DLIBDSDCC_INCLUDE_DIR=/usr/include/dsdcc \
-    -DCM256CC_INCLUDE_DIR=/usr/include/cm256cc
+    -DCM256CC_INCLUDE_DIR=/usr/include/cm256cc \
+    -DENABLE_GENERIC=True
 
   make
+
+  echo 'Building sdrangel-sse4.1...'
+  cd "$srcdir"/$pkgbase-sse4.1-$pkgver/build
+
+  cmake .. \
+    -DCMAKE_BUILD_TYPE=Release \
+    -DCMAKE_INSTALL_PREFIX=/usr \
+    -DLIBDSDCC_INCLUDE_DIR=/usr/include/dsdcc \
+    -DCM256CC_INCLUDE_DIR=/usr/include/cm256cc \
+    -DFORCE_SSE41=True
+
+  make
 }
 
-package() {
+package_sdrangel() {
+  install=$pkgname.install
+
   cd $pkgname-$pkgver/build
 
   make DESTDIR="$pkgdir" install
 }
 
+package_sdrangel-sse4.1() {
+  pkgdesc="$pkgdesc (with SSE 4.1 extensions)"
+  provides=('sdrangel')
+  conflicts=('sdrangel')
+  install=$pkgname.install
+
+  cd $pkgname-$pkgver/build
+
+  make DESTDIR="$pkgdir" install
+}
+

Deleted: sdrangel-opencv4.patch
===================================================================
--- sdrangel-opencv4.patch	2019-11-29 10:38:19 UTC (rev 534339)
+++ sdrangel-opencv4.patch	2019-11-29 10:38:24 UTC (rev 534340)
@@ -1,87 +0,0 @@
---- sdrangel-4.1.0/plugins/channeltx/modatv/atvmod.cpp.orig	2018-11-20 21:07:19.060496490 +0000
-+++ sdrangel-4.1.0/plugins/channeltx/modatv/atvmod.cpp	2018-11-20 21:09:08.127437459 +0000
-@@ -331,7 +331,7 @@
-             		        mixImageAndText(colorFrame);
-             		    }
- 
--            		    cv::cvtColor(colorFrame, m_videoframeOriginal, CV_BGR2GRAY);
-+            		    cv::cvtColor(colorFrame, m_videoframeOriginal, cv::COLOR_BGR2GRAY);
-             		    resizeVideo();
-             		}
-             	}
-@@ -451,7 +451,7 @@
-                         mixImageAndText(colorFrame);
-                     }
- 
--                    cv::cvtColor(colorFrame, camera.m_videoframeOriginal, CV_BGR2GRAY);
-+                    cv::cvtColor(colorFrame, camera.m_videoframeOriginal, cv::COLOR_BGR2GRAY);
-                     resizeCamera();
-                 }
- 
-@@ -561,7 +561,7 @@
- 
-         if (m_videoOK && m_video.isOpened())
-         {
--            framesCount = m_video.get(CV_CAP_PROP_POS_FRAMES);;
-+            framesCount = m_video.get(cv::CAP_PROP_POS_FRAMES);;
-         } else {
-             framesCount = 0;
-         }
-@@ -792,7 +792,7 @@
- 
- void ATVMod::openImage(const QString& fileName)
- {
--    m_imageFromFile = cv::imread(qPrintable(fileName), CV_LOAD_IMAGE_GRAYSCALE);
-+    m_imageFromFile = cv::imread(qPrintable(fileName), cv::IMREAD_GRAYSCALE);
- 	m_imageOK = m_imageFromFile.data != 0;
- 
- 	if (m_imageOK)
-@@ -822,11 +822,11 @@
-     if (m_videoOK)
-     {
-         m_videoFileName = fileName;
--        m_videoFPS = m_video.get(CV_CAP_PROP_FPS);
--        m_videoWidth = (int) m_video.get(CV_CAP_PROP_FRAME_WIDTH);
--        m_videoHeight = (int) m_video.get(CV_CAP_PROP_FRAME_HEIGHT);
--        m_videoLength = (int) m_video.get(CV_CAP_PROP_FRAME_COUNT);
--        int ex = static_cast<int>(m_video.get(CV_CAP_PROP_FOURCC));
-+        m_videoFPS = m_video.get(cv::CAP_PROP_FPS);
-+        m_videoWidth = (int) m_video.get(cv::CAP_PROP_FRAME_WIDTH);
-+        m_videoHeight = (int) m_video.get(cv::CAP_PROP_FRAME_HEIGHT);
-+        m_videoLength = (int) m_video.get(cv::CAP_PROP_FRAME_COUNT);
-+        int ex = static_cast<int>(m_video.get(cv::CAP_PROP_FOURCC));
-         char ext[] = {(char)(ex & 0XFF),(char)((ex & 0XFF00) >> 8),(char)((ex & 0XFF0000) >> 16),(char)((ex & 0XFF000000) >> 24),0};
- 
-         qDebug("ATVMod::openVideo: %s FPS: %f size: %d x %d #frames: %d codec: %s",
-@@ -921,7 +921,7 @@
-     if ((m_videoOK) && m_video.isOpened())
-     {
-         int seekPoint = ((m_videoLength * seekPercentage) / 100);
--        m_video.set(CV_CAP_PROP_POS_FRAMES, seekPoint);
-+        m_video.set(cv::CAP_PROP_POS_FRAMES, seekPoint);
-         m_videoFPSCount = m_videoFPSq;
-         m_videoPrevFPSCount = 0;
-         m_videoEOF = false;
-@@ -939,9 +939,9 @@
- 
- 		if (m_cameras.back().m_camera.isOpened())
- 		{
--			m_cameras.back().m_videoFPS = m_cameras.back().m_camera.get(CV_CAP_PROP_FPS);
--			m_cameras.back().m_videoWidth = (int) m_cameras.back().m_camera.get(CV_CAP_PROP_FRAME_WIDTH);
--			m_cameras.back().m_videoHeight = (int) m_cameras.back().m_camera.get(CV_CAP_PROP_FRAME_HEIGHT);
-+			m_cameras.back().m_videoFPS = m_cameras.back().m_camera.get(cv::CAP_PROP_FPS);
-+			m_cameras.back().m_videoWidth = (int) m_cameras.back().m_camera.get(cv::CAP_PROP_FRAME_WIDTH);
-+			m_cameras.back().m_videoHeight = (int) m_cameras.back().m_camera.get(cv::CAP_PROP_FRAME_HEIGHT);
- 
- 			//m_cameras.back().m_videoFPS = m_cameras.back().m_videoFPS < 0 ? 16.3f : m_cameras.back().m_videoFPS;
- 
-@@ -1012,7 +1012,7 @@
-     // position the text in the top left corner
-     cv::Point textOrg(6, textSize.height+10);
-     // then put the text itself
--    cv::putText(image, m_settings.m_overlayText.toStdString(), textOrg, fontFace, fontScale, cv::Scalar::all(255*m_settings.m_uniformLevel), thickness, CV_AA);
-+    cv::putText(image, m_settings.m_overlayText.toStdString(), textOrg, fontFace, fontScale, cv::Scalar::all(255*m_settings.m_uniformLevel), thickness, cv::LINE_AA);
- }
- 
- void ATVMod::applyChannelSettings(int outputSampleRate, int inputFrequencyOffset, bool force)
-

Added: sdrangel-sse4.1.install
===================================================================
--- sdrangel-sse4.1.install	                        (rev 0)
+++ sdrangel-sse4.1.install	2019-11-29 10:38:24 UTC (rev 534340)
@@ -0,0 +1,4 @@
+post_install(){
+    echo "The binaries in the package include SSE 4.1 instructions."
+    echo "If your CPU does not support them please use the sdrangel package."
+}

Modified: sdrangel.install
===================================================================
--- sdrangel.install	2019-11-29 10:38:19 UTC (rev 534339)
+++ sdrangel.install	2019-11-29 10:38:24 UTC (rev 534340)
@@ -1,4 +1,4 @@
 post_install(){
     echo "The binaries in the package have limited SIMD support."
-    echo "Please consider using sdrangel-simd from the AUR if you are using sdrangel from any kind of DSP application or anything else that might be benefit from SIMD extensions."
+    echo "Please consider using sdrangel-sse4.1 from the AUR if you are using sdrangel from any kind of DSP application or anything else that might be benefit from SIMD extensions."
 }



More information about the arch-commits mailing list