From 04eb03136466a18d81511e7ccadf51c08faa8edb Mon Sep 17 00:00:00 2001 From: dimitri staessens Date: Tue, 30 Aug 2016 14:29:08 +0200 Subject: lib, ipcp: Compile on Apple junk Disables robust mutexes and clock attributes for condition variables for compatibility with OSX (SUSv2). Implements clock_gettime and adds some defines for OSX compatibility in time_utils. --- src/ipcpd/CMakeLists.txt | 4 +++- src/ipcpd/ipcp.c | 2 ++ src/ipcpd/normal/cdap_request.c | 2 ++ 3 files changed, 7 insertions(+), 1 deletion(-) (limited to 'src/ipcpd') diff --git a/src/ipcpd/CMakeLists.txt b/src/ipcpd/CMakeLists.txt index bb482ed9..43af7a25 100644 --- a/src/ipcpd/CMakeLists.txt +++ b/src/ipcpd/CMakeLists.txt @@ -7,4 +7,6 @@ set(IPCP_SOURCES add_subdirectory(local) add_subdirectory(normal) add_subdirectory(shim-udp) -add_subdirectory(shim-eth-llc) +if(NOT APPLE) + add_subdirectory(shim-eth-llc) +endif() diff --git a/src/ipcpd/ipcp.c b/src/ipcpd/ipcp.c index 87bf9e51..12111a51 100644 --- a/src/ipcpd/ipcp.c +++ b/src/ipcpd/ipcp.c @@ -48,7 +48,9 @@ struct ipcp * ipcp_instance_create() pthread_rwlock_init(&i->state_lock, NULL); pthread_mutex_init(&i->state_mtx, NULL); pthread_condattr_init(&cattr); +#ifndef __APPLE__ pthread_condattr_setclock(&cattr, PTHREAD_COND_CLOCK); +#endif pthread_cond_init(&i->state_cond, &cattr); return i; diff --git a/src/ipcpd/normal/cdap_request.c b/src/ipcpd/normal/cdap_request.c index cdbbb833..5839360b 100644 --- a/src/ipcpd/normal/cdap_request.c +++ b/src/ipcpd/normal/cdap_request.c @@ -48,7 +48,9 @@ struct cdap_request * cdap_request_create(enum cdap_opcode code, creq->result = -1; pthread_condattr_init(&cattr); +#ifndef __APPLE__ pthread_condattr_setclock(&cattr, PTHREAD_COND_CLOCK); +#endif pthread_cond_init(&creq->cond, &cattr); pthread_mutex_init(&creq->lock, NULL); -- cgit v1.2.3