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) <[email protected]> +# Maintainer: Filipe Laíns (FFY00) <[email protected]> # Contributor: Michal Krenek (Mikos) <[email protected]> -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@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." }
