version 1.50, 2010/07/31 10:34:18
|
version 1.51, 2010/08/06 15:26:51
|
Line 31
|
Line 31
|
# define _DARWIN_C_SOURCE |
# define _DARWIN_C_SOURCE |
#endif |
#endif |
|
|
|
#ifdef OS2 |
|
# define _BSD_SOURCE |
|
# define _XOPEN_SOURCE 600 |
|
|
|
# include <types.h> |
|
enum { SHUT_RD = 0, SHUT_WR, SHUT_RDWR }; |
|
# define SHUT_RD SHUT_RD |
|
# define SHUT_WR SHUT_WR |
|
# define SHUT_RDWR SHUT_RDWR |
|
# define SEM_FAILED NULL |
|
# undef IPV6 |
|
|
|
# include "getaddrinfo-conv.h" |
|
#else |
|
# define IPV6 |
|
#endif |
|
|
|
|
/* |
/* |
================================================================================ |
================================================================================ |
Line 66
|
Line 83
|
# include <dlfcn.h> |
# include <dlfcn.h> |
# include <fcntl.h> |
# include <fcntl.h> |
# include <pthread.h> |
# include <pthread.h> |
|
|
|
# ifdef OS2 |
|
# undef pthread_mutexattr_settype |
|
# define pthread_mutexattr_settype(a, b) |
|
# endif |
|
|
# include <pwd.h> |
# include <pwd.h> |
# include <semaphore.h> |
|
|
# ifndef OS2 |
|
# include <semaphore.h> |
|
# else |
|
# include <sys/sem.h> |
|
typedef int sem_t; |
|
|
|
sem_t *sem_open(const char *nom, int oflag, ...); |
|
int sem_init(sem_t *sem, int shared, unsigned int value); |
|
int sem_close(sem_t *sem); |
|
int sem_wait(sem_t *sem); |
|
int sem_trywait(sem_t *sem); |
|
int sem_post(sem_t *sem); |
|
int sem_getvalue(sem_t *sem, int *value); |
|
int sem_unlink(const char *nom); |
|
int sem_destroy(sem_t *sem); |
|
# endif |
|
|
# include <setjmp.h> |
# include <setjmp.h> |
# include <signal.h> |
# include <signal.h> |
# include <termios.h> |
# include <termios.h> |
Line 127
|
Line 167
|
*/ |
*/ |
|
|
#ifndef RPLARGS |
#ifndef RPLARGS |
# ifdef Darwin |
# if defined(Darwin) |
# define SIGPOLL SIGINFO |
# define SIGPOLL SIGINFO |
# endif |
# endif |
|
|
Line 190 typedef FILE file;
|
Line 230 typedef FILE file;
|
typedef unsigned char t_8_bits; |
typedef unsigned char t_8_bits; |
|
|
#ifndef RPLARGS |
#ifndef RPLARGS |
# include "rpltypes.conv.h" |
# include "rpltypes-conv.h" |
#else |
#else |
# include "rpltypes.h" |
# include "rpltypes.h" |
#endif |
#endif |
Line 362 int sem_getvalue2(sem_t *semaphore, int
|
Line 402 int sem_getvalue2(sem_t *semaphore, int
|
|
|
// Redéfinition de abs pour un fonctionnement en entier de type long long int |
// Redéfinition de abs pour un fonctionnement en entier de type long long int |
|
|
#if 1 |
#ifdef __GNUC__ |
# define abs(i) ({ typeof(i) _i; _i = (i); (_i >= 0) ? _i : -_i; }) |
# define abs(i) ({ typeof(i) _i; _i = (i); (_i >= 0) ? _i : -_i; }) |
// typeof() est une extension de gcc, mais est présent sur d'autres compilateurs |
// typeof() est une extension de gcc, mais est présent sur d'autres compilateurs |
// comme Sun Studio. Dans le cas où typeof() n'existe pas, il est possible |
// comme Sun Studio. Dans le cas où typeof() n'existe pas, il est possible |
Line 1530 typedef struct processus
|
Line 1570 typedef struct processus
|
pthread_t thread_fusible; |
pthread_t thread_fusible; |
pthread_t thread_surveille_par_fusible; |
pthread_t thread_surveille_par_fusible; |
|
|
# ifndef Cygwin |
# if !defined(Cygwin) |
stack_t pile_signal; |
stack_t pile_signal; |
# else |
# else |
# define SA_ONSTACK 0 |
# define SA_ONSTACK 0 |