OSDN Git Service

Phonon VLC backend build fixes for Windows platform
authorIvailo Monev <xakepa10@gmail.com>
Tue, 8 Mar 2016 15:42:14 +0000 (17:42 +0200)
committerIvailo Monev <xakepa10@gmail.com>
Tue, 8 Mar 2016 15:42:14 +0000 (17:42 +0200)
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
src/phonon/phonon-vlc/CMakeLists.txt
src/phonon/phonon-vlc/equalizereffect.cpp

index 4f1b6b3..430a138 100644 (file)
@@ -23,6 +23,13 @@ include(MimeTypes.cmake)
 
 add_definitions(-DPHONON_LIB_INSTALL_DIR="${LIB_INSTALL_DIR}")
 
+if(MINGW AND WITH_THREADS)
+    # VLC is trying to use POSIX poll() even with _WIN32
+    add_definitions(-DLIBVLC_USE_PTHREAD)
+    add_definitions(-DLIBVLC_USE_PTHREAD_CLEANUP)
+    add_definitions(-DLIBVLC_USE_PTHREAD_CANCEL)
+endif()
+
 if (MSVC OR (WIN32 AND "${CMAKE_CXX_COMPILER_ID}" STREQUAL "Intel"))
     include(CheckIncludeFileCXX)
     check_include_file_cxx(inttypes.h HAVE_INTTYPES)
@@ -46,6 +53,7 @@ set(phonon_vlc_SRCS
     devicemanager.cpp
     effect.cpp
     effectmanager.cpp
+    equalizereffect.cpp
     media.cpp
     mediacontroller.cpp
     mediaobject.cpp
@@ -59,10 +67,6 @@ set(phonon_vlc_SRCS
     utils/libvlc.cpp
 )
 
-if(${VLC_VERSION} VERSION_GREATER "2.2.0" OR ${VLC_VERSION} VERSION_EQUAL "2.2.0")
-    list(APPEND phonon_vlc_SRCS equalizereffect.cpp)
-endif()
-
 if(PHONON_GRAPHICS)
     list(APPEND phonon_vlc_SRCS video/videographicsobject.cpp)
 endif()
index d7bfd10..dc68e72 100644 (file)
@@ -15,6 +15,9 @@
     License along with this library.  If not, see <http://www.gnu.org/licenses/>.
 */
 
+#include <vlc/libvlc_version.h>
+#if (LIBVLC_VERSION_INT >= LIBVLC_VERSION(2, 2, 0, 0))
+
 #include "equalizereffect.h"
 
 #include "mediaplayer.h"
@@ -79,3 +82,5 @@ void EqualizerEffect::handleConnectToMediaObject(MediaObject *mediaObject)
 } // namespace Phonon
 
 #include "phonon-vlc/moc_equalizereffect.h"
+
+#endif // LIBVLC_VERSION