seq24: fix build failures due to name clash in "mutex" class

obadz d9db8a9b aed2cd32

+60
+2
pkgs/applications/audio/seq24/default.nix
··· 9 sha256 = "1qpyb7355s21sgy6gibkybxpzx4ikha57a8w644lca6qy9mhcwi3"; 10 }; 11 12 buildInputs = [ alsaLib gtkmm libjack2 ]; 13 nativeBuildInputs = [ pkgconfig ]; 14
··· 9 sha256 = "1qpyb7355s21sgy6gibkybxpzx4ikha57a8w644lca6qy9mhcwi3"; 10 }; 11 12 + patches = [ ./mutex_no_nameclash.patch ]; 13 + 14 buildInputs = [ alsaLib gtkmm libjack2 ]; 15 nativeBuildInputs = [ pkgconfig ]; 16
+58
pkgs/applications/audio/seq24/mutex_no_nameclash.patch
···
··· 1 + --- a/src/mutex.cpp 2 + +++ b/src/mutex.cpp 3 + @@ -20,23 +20,23 @@ 4 + 5 + #include "mutex.h" 6 + 7 + -const pthread_mutex_t mutex::recmutex = PTHREAD_RECURSIVE_MUTEX_INITIALIZER_NP; 8 + +const pthread_mutex_t mutex_no_nameclash::recmutex = PTHREAD_RECURSIVE_MUTEX_INITIALIZER_NP; 9 + const pthread_cond_t condition_var::cond = PTHREAD_COND_INITIALIZER; 10 + 11 + -mutex::mutex( ) 12 + +mutex_no_nameclash::mutex_no_nameclash( ) 13 + { 14 + m_mutex_lock = recmutex; 15 + } 16 + 17 + void 18 + -mutex::lock( ) 19 + +mutex_no_nameclash::lock( ) 20 + { 21 + pthread_mutex_lock( &m_mutex_lock ); 22 + } 23 + 24 + 25 + void 26 + -mutex::unlock( ) 27 + +mutex_no_nameclash::unlock( ) 28 + { 29 + pthread_mutex_unlock( &m_mutex_lock ); 30 + } 31 + --- a/src/mutex.h 32 + +++ b/src/mutex.h 33 + @@ -24,7 +24,7 @@ 34 + 35 + #include <pthread.h> 36 + 37 + -class mutex { 38 + +class mutex_no_nameclash { 39 + 40 + private: 41 + 42 + @@ -37,14 +37,14 @@ 43 + 44 + public: 45 + 46 + - mutex(); 47 + + mutex_no_nameclash(); 48 + 49 + void lock(); 50 + void unlock(); 51 + 52 + }; 53 + 54 + -class condition_var : public mutex { 55 + +class condition_var : public mutex_no_nameclash { 56 + 57 + private: 58 +