- compile fixes for Haiku

svn path=/trunk/boinc/; revision=18213
This commit is contained in:
David Anderson 2009-05-27 23:36:55 +00:00
parent 3d129f9788
commit 97d50e12b9
7 changed files with 22 additions and 3 deletions

View File

@ -4757,3 +4757,14 @@ David 27 May 2009
lib/
filesys.h
David 27 May 2009
- compile fixes for Haiku
lib/
network.h
gui_rpc_client.h
diagnostics.cpp
shmem.cpp,h
zip/unzip/unix/
unix.c

View File

@ -595,7 +595,10 @@ void boinc_catch_signal(int signal) {
case SIGINT: fprintf(stderr, "SIGINT: interrupt program\n"); break;
case SIGILL: fprintf(stderr, "SIGILL: illegal instruction\n"); break;
case SIGABRT: fprintf(stderr, "SIGABRT: abort called\n"); break;
#if SIGBUS != SIGSEGV
// in case SIGBUS == SIGSEGV (e.g., Haiku)
case SIGBUS: fprintf(stderr, "SIGBUS: bus error\n"); break;
#endif
case SIGSEGV: fprintf(stderr, "SIGSEGV: segmentation violation\n"); break;
case SIGSYS: fprintf(stderr, "SIGSYS: system call given invalid argument\n"); break;
case SIGPIPE: fprintf(stderr, "SIGPIPE: write on a pipe with no reader\n");

View File

@ -674,6 +674,7 @@ struct RPC {
// so the following compatibility code avoids compiler errors when
// building libboinc.a using config & make on system OS 10.3.9 or
// with the OS 10.3.9 SDK (but using config & make is not recommended.)
//
#if defined(__APPLE__) && (MAC_OS_X_VERSION_MIN_REQUIRED < MAC_OS_X_VERSION_10_4) && (!defined(BUILDING_MANAGER))
#define NO_PER_THREAD_LOCALE 1
#endif
@ -684,6 +685,9 @@ struct RPC {
//#if defined(__UNIVAC__)
//#define NO_PER_THREAD_LOCALE 1
//#endif
#if defined(__HAIKU__)
#define NO_PER_THREAD_LOCALE 1
#endif
#ifdef NO_PER_THREAD_LOCALE

View File

@ -20,6 +20,7 @@
#include <string.h>
#ifndef _WIN32
#include <sys/select.h>
#include <unistd.h>
#include "config.h"
#else

View File

@ -43,6 +43,8 @@ extern "C" int debug_printf(const char *fmt, ...);
#include <sys/param.h>
#endif
#include <sys/shm.h>
#else
you need to implement your own shmem functions
#endif
#endif
@ -382,7 +384,6 @@ int detach_shmem_mmap(void* p, size_t size) {
return munmap((char *)p, size);
}
// Compatibility routines for Unix/Linux/Mac V5 applications
//
int create_shmem(key_t key, int size, gid_t gid, void** pp) {

View File

@ -22,7 +22,6 @@
#ifndef _WIN32
#include <sys/types.h>
#include <sys/shm.h>
#endif
// create_shmem(): create a shared-memory segment of the given size.

View File

@ -32,7 +32,7 @@
#ifdef SCO_XENIX
# define SYSNDIR
#else /* SCO Unix, AIX, DNIX, TI SysV, Coherent 4.x, ... */
# if defined(__convexc__) || defined(SYSV) || defined(CRAY) || defined(BSD4_4)
# if defined(__convexc__) || defined(SYSV) || defined(CRAY) || defined(BSD4_4) || defined(__HAIKU__)
# define DIRENT
# endif
#endif