From d5b0c4b1f3367b76f1b7af934f99cf1e1cb35b82 Mon Sep 17 00:00:00 2001 From: naruse Date: Mon, 25 Jan 2010 03:06:06 +0000 Subject: [PATCH] * dln.c, file.c, io.c, signal.c: add __HAIKU__. patched by Alexander von Gluck [ruby-core:27767] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@26398 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- ChangeLog | 5 +++++ dln.c | 6 +++--- file.c | 4 ++-- io.c | 8 ++++---- signal.c | 2 +- 5 files changed, 15 insertions(+), 10 deletions(-) diff --git a/ChangeLog b/ChangeLog index 197aa98a17..571556942b 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +Mon Jan 25 12:02:34 2010 NARUSE, Yui + + * dln.c, file.c, io.c, signal.c: add __HAIKU__. + patched by Alexander von Gluck [ruby-core:27767] + Mon Jan 25 11:45:47 2010 NARUSE, Yui * math.c (domain_check): ignore errno if y is inf. diff --git a/dln.c b/dln.c index 7409ce30e3..1d2574b836 100644 --- a/dln.c +++ b/dln.c @@ -84,7 +84,7 @@ char *getenv(); # endif #endif -#ifdef __BEOS__ +#if defined(__BEOS__) || defined(__HAIKU__) # include #endif @@ -1433,7 +1433,7 @@ dln_load(const char *file) #endif /* rld or dyld */ #endif -#ifdef __BEOS__ +#if defined(__BEOS__) || defined(__HAIKU__) # define DLN_DEFINED { status_t err_stat; /* BeOS error status code */ @@ -1479,7 +1479,7 @@ dln_load(const char *file) (*init_fct)(); return (void*)img_id; } -#endif /* __BEOS__*/ +#endif /* __BEOS__ || __HAIKU__ */ #ifndef DLN_DEFINED dln_notimplement(); diff --git a/file.c b/file.c index 1982452ed9..5b1431525d 100644 --- a/file.c +++ b/file.c @@ -70,7 +70,7 @@ int flock(int, int); #define lstat stat #endif -#ifdef __BEOS__ /* should not change ID if -1 */ +#if defined(__BEOS__) || defined(__HAIKU__) /* should not change ID if -1 */ static int be_chown(const char *path, uid_t owner, gid_t group) { @@ -95,7 +95,7 @@ be_fchown(int fd, uid_t owner, gid_t group) return fchown(fd, owner, group); } #define fchown be_fchown -#endif /* __BEOS__ */ +#endif /* __BEOS__ || __HAIKU__ */ VALUE rb_cFile; VALUE rb_mFileTest; diff --git a/io.c b/io.c index 5d4752a177..e69fc9dc46 100644 --- a/io.c +++ b/io.c @@ -30,7 +30,7 @@ # include #endif -#if defined(__BOW__) || defined(__CYGWIN__) || defined(_WIN32) || defined(__EMX__) || defined(__BEOS__) +#if defined(__BOW__) || defined(__CYGWIN__) || defined(_WIN32) || defined(__EMX__) || defined(__BEOS__) || defined(__HAIKU__) # define NO_SAFE_RENAME #endif @@ -83,7 +83,7 @@ extern void Init_File(void); -#ifdef __BEOS__ +#if defined(__BEOS__) || defined(__HAIKU__) # ifndef NOFILE # define NOFILE (OPEN_MAX) # endif @@ -162,7 +162,7 @@ static int max_file_descriptor = NOFILE; # define STDIO_READ_DATA_PENDING(fp) ((fp)->FILE_COUNT > 0) #elif defined(FILE_READEND) # define STDIO_READ_DATA_PENDING(fp) ((fp)->FILE_READPTR < (fp)->FILE_READEND) -#elif defined(__BEOS__) +#elif defined(__BEOS__) || defined(__HAIKU__) # define STDIO_READ_DATA_PENDING(fp) (fp->_state._eof == 0) #else # define STDIO_READ_DATA_PENDING(fp) (!feof(fp)) @@ -1525,7 +1525,7 @@ remain_size(rb_io_t *fptr) off_t pos; if (fstat(fptr->fd, &st) == 0 && S_ISREG(st.st_mode) -#ifdef __BEOS__ +#if defined(__BEOS__) || defined(__HAIKU__) && (st.st_dev > 3) #endif ) diff --git a/signal.c b/signal.c index 43ed80b85b..3381c00d95 100644 --- a/signal.c +++ b/signal.c @@ -34,7 +34,7 @@ typedef int rb_atomic_t; # define ATOMIC_DEC(var) (--(var)) #endif -#ifdef __BEOS__ +#if defined(__BEOS__) || defined(__HAIKU__) #undef SIGBUS #endif