Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 30 Nov 2015 09:57:08 +0000 (UTC)
From:      Raphael Kubo da Costa <rakuco@FreeBSD.org>
To:        ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org
Subject:   svn commit: r402657 - head/multimedia/qt5-multimedia/files
Message-ID:  <201511300957.tAU9v8wB058821@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: rakuco
Date: Mon Nov 30 09:57:08 2015
New Revision: 402657
URL: https://svnweb.freebsd.org/changeset/ports/402657

Log:
  Add upstream patch to fix the build with ALSA 1.1.0.
  
  Some checks were too strict and assuming SND_LIB_MINOR was always 0. This
  was making ALSA detection fail and preventing the plugins from being built
  when the ALSA option was on.
  
  Thanks to Stephen Hurd (shurd@) for pointing to the cause of the problem and
  providing an initial version of the patch.
  
  This does not need to be merged into 2015Q4 because it still contains ALSA
  1.0.29.
  
  PR:		204488

Added:
  head/multimedia/qt5-multimedia/files/
  head/multimedia/qt5-multimedia/files/patch-git_3b322323   (contents, props changed)

Added: head/multimedia/qt5-multimedia/files/patch-git_3b322323
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/multimedia/qt5-multimedia/files/patch-git_3b322323	Mon Nov 30 09:57:08 2015	(r402657)
@@ -0,0 +1,102 @@
+commit 3b322323d036ae2fc9f685bfc74d1ebcd5532159
+Author: Raphael Kubo da Costa <rakuco@FreeBSD.org>
+Date:   Fri Nov 27 14:36:50 2015 +0100
+
+    alsa: Relax ALSA version checks for 1.1.x to be detected.
+
+    Relax the check for SND_LIB_MINOR and SND_LIB_SUBMINOR so that ALSA
+    1.1.x is not considered older than 1.0.10. QtMultimedia builds fine with
+    ALSA 1.1.
+
+    Change-Id: If697c34cc7d9bbe2f2a3413d0c25ac4de4e93b34
+    Reviewed-by: Christian Stromme <christian.stromme@theqtcompany.com>
+
+--- config.tests/alsa/alsatest.cpp
++++ config.tests/alsa/alsatest.cpp
+@@ -32,7 +32,7 @@
+ ****************************************************************************/
+ 
+ #include <alsa/asoundlib.h>
+-#if (!(SND_LIB_MAJOR == 1 && SND_LIB_MINOR == 0 && SND_LIB_SUBMINOR >= 10))
++#if (!(SND_LIB_MAJOR == 1 && (SND_LIB_MINOR > 0 || SND_LIB_SUBMINOR >= 10)))
+ #error "Alsa version found too old, require >= 1.0.10"
+ #endif
+ 
+--- src/plugins/alsa/qalsaaudiodeviceinfo.cpp
++++ src/plugins/alsa/qalsaaudiodeviceinfo.cpp
+@@ -141,7 +141,7 @@ bool QAlsaAudioDeviceInfo::open()
+     QList<QByteArray> devices = availableDevices(mode);
+ 
+     if(dev.compare(QLatin1String("default")) == 0) {
+-#if(SND_LIB_MAJOR == 1 && SND_LIB_MINOR == 0 && SND_LIB_SUBMINOR >= 14)
++#if (SND_LIB_MAJOR == 1 && (SND_LIB_MINOR > 0 || SND_LIB_SUBMINOR >= 14))
+         if (devices.size() > 0)
+             dev = QLatin1String(devices.first().constData());
+         else
+@@ -150,7 +150,7 @@ bool QAlsaAudioDeviceInfo::open()
+         dev = QLatin1String("hw:0,0");
+ #endif
+     } else {
+-#if(SND_LIB_MAJOR == 1 && SND_LIB_MINOR == 0 && SND_LIB_SUBMINOR >= 14)
++#if (SND_LIB_MAJOR == 1 && (SND_LIB_MINOR > 0 || SND_LIB_SUBMINOR >= 14))
+         dev = device;
+ #else
+         int idx = 0;
+@@ -194,7 +194,7 @@ bool QAlsaAudioDeviceInfo::testSettings(const QAudioFormat& format) const
+     snd_pcm_hw_params_t *params;
+     QString dev;
+ 
+-#if(SND_LIB_MAJOR == 1 && SND_LIB_MINOR == 0 && SND_LIB_SUBMINOR >= 14)
++#if (SND_LIB_MAJOR == 1 && (SND_LIB_MINOR > 0 || SND_LIB_SUBMINOR >= 14))
+     dev = device;
+     if (dev.compare(QLatin1String("default")) == 0) {
+         QList<QByteArray> devices = availableDevices(QAudio::AudioOutput);
+@@ -335,7 +335,7 @@ QList<QByteArray> QAlsaAudioDeviceInfo::availableDevices(QAudio::Mode mode)
+     QList<QByteArray> devices;
+     QByteArray filter;
+ 
+-#if(SND_LIB_MAJOR == 1 && SND_LIB_MINOR == 0 && SND_LIB_SUBMINOR >= 14)
++#if (SND_LIB_MAJOR == 1 && (SND_LIB_MINOR > 0 || SND_LIB_SUBMINOR >= 14))
+     // Create a list of all current audio devices that support mode
+     void **hints, **n;
+     char *name, *descr, *io;
+--- src/plugins/alsa/qalsaaudioinput.cpp
++++ src/plugins/alsa/qalsaaudioinput.cpp
+@@ -303,7 +303,7 @@ bool QAlsaAudioInput::open()
+     QString dev = QString(QLatin1String(m_device.constData()));
+     QList<QByteArray> devices = QAlsaAudioDeviceInfo::availableDevices(QAudio::AudioInput);
+     if(dev.compare(QLatin1String("default")) == 0) {
+-#if(SND_LIB_MAJOR == 1 && SND_LIB_MINOR == 0 && SND_LIB_SUBMINOR >= 14)
++#if (SND_LIB_MAJOR == 1 && (SND_LIB_MINOR > 0 || SND_LIB_SUBMINOR >= 14))
+         if (devices.size() > 0)
+             dev = QLatin1String(devices.first());
+         else
+@@ -312,7 +312,7 @@ bool QAlsaAudioInput::open()
+         dev = QLatin1String("hw:0,0");
+ #endif
+     } else {
+-#if(SND_LIB_MAJOR == 1 && SND_LIB_MINOR == 0 && SND_LIB_SUBMINOR >= 14)
++#if (SND_LIB_MAJOR == 1 && (SND_LIB_MINOR > 0 || SND_LIB_SUBMINOR >= 14))
+         dev = QLatin1String(m_device);
+ #else
+         int idx = 0;
+--- src/plugins/alsa/qalsaaudiooutput.cpp
++++ src/plugins/alsa/qalsaaudiooutput.cpp
+@@ -306,7 +306,7 @@ bool QAlsaAudioOutput::open()
+     QString dev = QString(QLatin1String(m_device.constData()));
+     QList<QByteArray> devices = QAlsaAudioDeviceInfo::availableDevices(QAudio::AudioOutput);
+     if(dev.compare(QLatin1String("default")) == 0) {
+-#if(SND_LIB_MAJOR == 1 && SND_LIB_MINOR == 0 && SND_LIB_SUBMINOR >= 14)
++#if (SND_LIB_MAJOR == 1 && (SND_LIB_MINOR > 0 || SND_LIB_SUBMINOR >= 14))
+         if (devices.size() > 0)
+             dev = QLatin1String(devices.first());
+         else
+@@ -315,7 +315,7 @@ bool QAlsaAudioOutput::open()
+         dev = QLatin1String("hw:0,0");
+ #endif
+     } else {
+-#if(SND_LIB_MAJOR == 1 && SND_LIB_MINOR == 0 && SND_LIB_SUBMINOR >= 14)
++#if (SND_LIB_MAJOR == 1 && (SND_LIB_MINOR > 0 || SND_LIB_SUBMINOR >= 14))
+         dev = QLatin1String(m_device);
+ #else
+         int idx = 0;



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201511300957.tAU9v8wB058821>