Fix various portability glitches.

This commit is contained in:
joerg 2007-08-30 15:30:30 +00:00
parent 4e2af845c4
commit f5d0f7268e
5 changed files with 129 additions and 1 deletions

View file

@ -1,6 +1,10 @@
$NetBSD: distinfo,v 1.4 2007/08/13 12:06:40 drochner Exp $
$NetBSD: distinfo,v 1.5 2007/08/30 15:30:30 joerg Exp $
SHA1 (bmpx-0.40.1.tar.bz2) = c2d69fd8909d1d7a69ff13eee149084da9b802f0
RMD160 (bmpx-0.40.1.tar.bz2) = 8d00392449ad4602e380c9f78cb12c4077db9eec
Size (bmpx-0.40.1.tar.bz2) = 1793356 bytes
SHA1 (patch-aa) = b4a761b618aa976945c6983e752389cc226b1cbb
SHA1 (patch-ab) = 120eb75ae966e59a071c3023470c9204428440e6
SHA1 (patch-ac) = 77d88acc2c74259f293dc54699a322962f50ce57
SHA1 (patch-ad) = baaff3d28d81532d692a7594818d763552b81349
SHA1 (patch-ae) = 249f85f328d82e69b440999063a4b42be5f0614d

View file

@ -0,0 +1,31 @@
$NetBSD: patch-ab,v 1.3 2007/08/30 15:30:31 joerg Exp $
--- jnetlib/connection.cpp.orig 2007-08-30 13:39:23.000000000 +0000
+++ jnetlib/connection.cpp
@@ -205,8 +205,6 @@ void JNL_Connection::run(int max_send_by
FD_SET(m_socket,&f[1]);
FD_SET(m_socket,&f[2]);
- struct timespec ts;
- memset(&ts,0,sizeof(ts));
sigset_t sigs;
sigfillset (&sigs);
sigdelset (&sigs, SIGBUS);
@@ -215,7 +213,16 @@ void JNL_Connection::run(int max_send_by
sigdelset (&sigs, SIGSEGV);
sigdelset (&sigs, SIGKILL);
sigdelset (&sigs, SIGSTOP);
- if (pselect(m_socket+1,&f[0],&f[1],&f[2],&ts,&sigs)==-1)
+#ifdef __DragonFly__
+ sigset_t cur_set;
+ sigprocmask(SIG_SETMASK, &sigs, &cur_set);
+ int select_retval = select(m_socket+1,&f[0],&f[1],&f[2],NULL);
+ sigprocmask(SIG_SETMASK, &cur_set, NULL);
+
+ if (select_retval == -1)
+#else
+ if (pselect(m_socket+1,&f[0],&f[1],&f[2],NULL,&sigs)==-1)
+#endif
{
m_errorstr="connecting to host (calling select())";
m_state=STATE_ERROR;

View file

@ -0,0 +1,67 @@
$NetBSD: patch-ac,v 1.3 2007/08/30 15:30:31 joerg Exp $
--- src/audio/audio.hh.orig 2007-08-11 18:41:50.000000000 +0000
+++ src/audio/audio.hh
@@ -125,7 +125,30 @@ namespace Bmp
*/
struct Element
{
- class Attr;
+ /** An attribute holds a @link Bmp::Audio::Element::Attr::Value@endlink,
+ * and a name (std::string)
+ */
+ struct Attr
+ {
+ /** boost::variant type for bool, int, double and string values
+ */
+ typedef boost::variant<bool, int, double, std::string> Value;
+
+ std::string name;
+ Value value;
+
+ /** Default ctor
+ */
+ Attr () {}
+
+ /** Ctor taking the value, type and the name
+ */
+ Attr (std::string const& name,
+ Value const& value)
+ : name (name)
+ , value (value)
+ {}
+ };
/** std::vector typedef of an Attr
*/
@@ -164,30 +187,6 @@ namespace Bmp
}
};
- /** An attribute holds a @link Bmp::Audio::Element::Attr::Value@endlink,
- * and a name (std::string)
- */
- struct Element::Attr
- {
- /** boost::variant type for bool, int, double and string values
- */
- typedef boost::variant<bool, int, double, std::string> Value;
-
- std::string name;
- Value value;
-
- /** Default ctor
- */
- Attr () {}
-
- /** Ctor taking the value, type and the name
- */
- Attr (std::string const& name,
- Value const& value)
- : name (name)
- , value (value)
- {}
- };
/** Current state of the audio processing unit
*/

View file

@ -0,0 +1,13 @@
$NetBSD: patch-ad,v 1.3 2007/08/30 15:30:31 joerg Exp $
--- src/network.cc.orig 2007-08-30 14:13:19.000000000 +0000
+++ src/network.cc
@@ -166,7 +166,7 @@ namespace Bmp
FD_SET (rc, &rfds);
tv.tv_sec = time_t (timeout);
- tv.tv_usec = suseconds_t ((timeout - tv.tv_sec) * 1000000);
+ tv.tv_usec = (long)((timeout - tv.tv_sec) * 1000000);
if (write)
retval = select (rc+1, &rfds, NULL, NULL, &tv);

View file

@ -0,0 +1,13 @@
$NetBSD: patch-ae,v 1.1 2007/08/30 15:30:32 joerg Exp $
--- jnetlib/asyncdns.h.orig 2007-08-30 14:37:50.000000000 +0000
+++ jnetlib/asyncdns.h
@@ -18,6 +18,8 @@
#ifndef _ASYNCDNS_H_
#define _ASYNCDNS_H_
+#include <pthread.h>
+
class JNL_AsyncDNS
{
public: