diff options
author | riggs <riggs@FreeBSD.org> | 2016-06-01 14:17:51 +0800 |
---|---|---|
committer | riggs <riggs@FreeBSD.org> | 2016-06-01 14:17:51 +0800 |
commit | 10a168b51ad73a9a0fcd2bf05e692712486ecbbb (patch) | |
tree | a60fd76faf476f6f838eaa5ed10a7ab0bf9d4f34 /multimedia | |
parent | dbd0ceafc85e8b11a3624d3a405f57e8bf046eb7 (diff) | |
download | freebsd-ports-gnome-10a168b51ad73a9a0fcd2bf05e692712486ecbbb.tar.gz freebsd-ports-gnome-10a168b51ad73a9a0fcd2bf05e692712486ecbbb.tar.zst freebsd-ports-gnome-10a168b51ad73a9a0fcd2bf05e692712486ecbbb.zip |
Fix build with libc++ 3.8.0
VLC brings its own header for atomic operations which defines a whole
bunch of atomic macros, conflicting with the ones in the C++ standard
<atomic> header. This changeset works around those.
PR: 209722
Submitted by: dim
Diffstat (limited to 'multimedia')
4 files changed, 69 insertions, 0 deletions
diff --git a/multimedia/vlc/files/patch-include_vlc__atomic.h b/multimedia/vlc/files/patch-include_vlc__atomic.h new file mode 100644 index 000000000000..064bf0f4c58f --- /dev/null +++ b/multimedia/vlc/files/patch-include_vlc__atomic.h @@ -0,0 +1,17 @@ +--- include/vlc_atomic.h.orig 2014-08-14 07:20:03 UTC ++++ include/vlc_atomic.h +@@ -32,6 +32,14 @@ + /*** Native C11 atomics ***/ + # include <stdatomic.h> + ++# elif defined (__cplusplus) && defined(_LIBCPP_VERSION) && _LIBCPP_VERSION >= 3800 ++ ++# include <atomic> ++ ++using std::atomic_uint_least32_t; ++using std::atomic_uintptr_t; ++using std::atomic_int; ++ + # else + + # define ATOMIC_FLAG_INIT false diff --git a/multimedia/vlc/files/patch-include_vlc__playlist.h b/multimedia/vlc/files/patch-include_vlc__playlist.h new file mode 100644 index 000000000000..c846d1a7ade5 --- /dev/null +++ b/multimedia/vlc/files/patch-include_vlc__playlist.h @@ -0,0 +1,19 @@ +--- include/vlc_playlist.h.orig 2014-11-16 18:57:58 UTC ++++ include/vlc_playlist.h +@@ -24,13 +24,13 @@ + #ifndef VLC_PLAYLIST_H_ + #define VLC_PLAYLIST_H_ + ++#include <vlc_input.h> ++#include <vlc_events.h> ++ + # ifdef __cplusplus + extern "C" { + # endif + +-#include <vlc_input.h> +-#include <vlc_events.h> +- + TYPEDEF_ARRAY(playlist_item_t*, playlist_item_array_t) + + struct intf_thread_t; diff --git a/multimedia/vlc/files/patch-include_vlc__sout.h b/multimedia/vlc/files/patch-include_vlc__sout.h new file mode 100644 index 000000000000..fb99aad4f588 --- /dev/null +++ b/multimedia/vlc/files/patch-include_vlc__sout.h @@ -0,0 +1,22 @@ +--- include/vlc_sout.h.orig 2014-11-16 18:57:58 UTC ++++ include/vlc_sout.h +@@ -28,6 +28,9 @@ + #ifndef VLC_SOUT_H_ + #define VLC_SOUT_H_ + ++#include <sys/types.h> ++#include <vlc_es.h> ++ + /** + * \file + * This file defines structures and functions for stream output in vlc +@@ -37,9 +40,6 @@ + extern "C" { + #endif + +-#include <sys/types.h> +-#include <vlc_es.h> +- + /** Stream output instance (FIXME: should be private to src/ to avoid + * invalid unsynchronized access) */ + struct sout_instance_t diff --git a/multimedia/vlc/files/patch-modules_gui_qt4_dialogs_messages.hpp b/multimedia/vlc/files/patch-modules_gui_qt4_dialogs_messages.hpp new file mode 100644 index 000000000000..bb70dc1bf936 --- /dev/null +++ b/multimedia/vlc/files/patch-modules_gui_qt4_dialogs_messages.hpp @@ -0,0 +1,11 @@ +--- modules/gui/qt4/dialogs/messages.hpp.orig 2014-08-14 07:20:04 UTC ++++ modules/gui/qt4/dialogs/messages.hpp +@@ -55,7 +55,7 @@ private: + void sinkMessage( const MsgEvent * ); + bool matchFilter( const QString& ); + +- atomic_uint verbosity; ++ atomic_int verbosity; + static void MsgCallback( void *, int, const vlc_log_t *, const char *, + va_list ); + |