mirror of
https://git.rwth-aachen.de/acs/public/villas/node/
synced 2025-03-09 00:00:00 +01:00
remove broken support for Darwin/macOS
This commit is contained in:
parent
d72b19c2ec
commit
ae1b064b5a
9 changed files with 5 additions and 105 deletions
|
@ -44,10 +44,6 @@ else()
|
|||
set(TOPLEVEL_PROJECT OFF)
|
||||
endif()
|
||||
|
||||
if(APPLE)
|
||||
set(ENV{PKG_CONFIG_PATH} "$ENV{PKG_CONFIG_PATH}:/opt/local/lib/pkgconfig")
|
||||
endif()
|
||||
|
||||
# check compiler version
|
||||
if("${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU")
|
||||
# require at least gcc 8
|
||||
|
@ -70,10 +66,6 @@ include(GetVersion)
|
|||
include(FindSymbol)
|
||||
include(CMakeDependentOption)
|
||||
|
||||
if(APPLE)
|
||||
add_definitions(-D_DARWIN_C_SOURCE)
|
||||
endif()
|
||||
|
||||
add_definitions(-D_POSIX_C_SOURCE=200809L -D_GNU_SOURCE)
|
||||
add_compile_options(-Wall -Wno-unknown-pragmas -Werror -fdiagnostics-color=auto)
|
||||
|
||||
|
|
|
@ -25,11 +25,7 @@
|
|||
|
||||
#include <cstdint>
|
||||
|
||||
#ifdef __APPLE__
|
||||
#include <net/ethernet.h>
|
||||
#else
|
||||
#include <netinet/ether.h>
|
||||
#endif
|
||||
#include <netinet/ether.h>
|
||||
|
||||
#include <libiec61850/hal_ethernet.h>
|
||||
#include <libiec61850/goose_receiver.h>
|
||||
|
|
|
@ -37,8 +37,7 @@ enum class QueueSignalledMode {
|
|||
POLLING,
|
||||
#ifdef HAS_EVENTFD
|
||||
EVENTFD,
|
||||
#elif defined(__APPLE__)
|
||||
PIPE,
|
||||
|
||||
#endif
|
||||
};
|
||||
|
||||
|
@ -60,8 +59,6 @@ struct CQueueSignalled {
|
|||
} pthread;
|
||||
#ifdef __linux__
|
||||
int eventfd;
|
||||
#elif defined(__APPLE__)
|
||||
int pipe[2];
|
||||
#endif
|
||||
};
|
||||
};
|
||||
|
|
|
@ -33,13 +33,9 @@ set(LIBRARIES
|
|||
PkgConfig::UUID
|
||||
m
|
||||
stdc++
|
||||
rt
|
||||
)
|
||||
|
||||
# For shmem_unlink
|
||||
if(UNIX AND NOT APPLE)
|
||||
list(APPEND LIBRARIES "rt")
|
||||
endif()
|
||||
|
||||
set(LIB_SRC
|
||||
capabilities.cpp
|
||||
config_helper.cpp
|
||||
|
@ -149,20 +145,15 @@ if(WITH_FPGA)
|
|||
endif()
|
||||
|
||||
add_library(villas SHARED ${LIB_SRC})
|
||||
|
||||
target_include_directories(villas PUBLIC ${INCLUDE_DIRS})
|
||||
target_link_libraries(villas PUBLIC ${LIBRARIES})
|
||||
target_link_libraries(villas PRIVATE -Wl,--whole-archive ${WHOLE_ARCHIVES} -Wl,--no-whole-archive)
|
||||
|
||||
# We need to link with -Bsymbolic in order to use link libvillas
|
||||
# with Go code (Cgo)
|
||||
# See also: https://stackoverflow.com/a/67299849
|
||||
target_link_options(villas PUBLIC "-Wl,-Bsymbolic")
|
||||
|
||||
if(APPLE)
|
||||
target_link_libraries(villas PRIVATE -Wl,-all_load ${WHOLE_ARCHIVES} -Wl,-noall_load)
|
||||
else()
|
||||
target_link_libraries(villas PRIVATE -Wl,--whole-archive ${WHOLE_ARCHIVES} -Wl,--no-whole-archive)
|
||||
endif()
|
||||
|
||||
set_target_properties(villas PROPERTIES
|
||||
VERSION ${CMAKE_PROJECT_VERSION}
|
||||
|
|
|
@ -181,14 +181,8 @@ int villas::node::iec61850_sv_parse(NodeCompat *n, json_t *json)
|
|||
if (interface)
|
||||
i->interface = strdup(interface);
|
||||
|
||||
if (dst_address) {
|
||||
#ifdef __APPLE__
|
||||
struct ether_addr *ether = ether_aton(dst_address);
|
||||
memcpy(&i->dst_address, ether, sizeof(struct ether_addr));
|
||||
#else
|
||||
if (dst_address)
|
||||
ether_aton_r(dst_address, &i->dst_address);
|
||||
#endif
|
||||
}
|
||||
|
||||
if (json_out) {
|
||||
i->out.enabled = true;
|
||||
|
|
|
@ -142,10 +142,6 @@ int LoopbackNode::parse(json_t *json)
|
|||
mode = QueueSignalledMode::PTHREAD;
|
||||
else if (!strcmp(mode_str, "polling"))
|
||||
mode = QueueSignalledMode::POLLING;
|
||||
#ifdef __APPLE__
|
||||
else if (!strcmp(mode_str, "pipe"))
|
||||
l->mode = QueueSignalledMode::PIPE;
|
||||
#endif /* __APPLE__ */
|
||||
else
|
||||
throw ConfigError(json, "node-config-node-loopback-mode", "Unknown mode '{}'", mode_str);
|
||||
}
|
||||
|
|
|
@ -56,11 +56,6 @@ int villas::node::queue_signalled_init(struct CQueueSignalled *qs, size_t size,
|
|||
qs->mode = QueueSignalledMode::PTHREAD;
|
||||
#endif
|
||||
}
|
||||
#elif defined(__APPLE__)
|
||||
if (flags & (int) QueueSignalledFlags::PROCESS_SHARED)
|
||||
qs->mode = QueueSignalledMode::PTHREAD;
|
||||
else
|
||||
qs->mode = QueueSignalledMode::PIPE;
|
||||
#else
|
||||
qs->mode = QueueSignalledMode::PTHREAD;
|
||||
#endif
|
||||
|
@ -97,12 +92,6 @@ int villas::node::queue_signalled_init(struct CQueueSignalled *qs, size_t size,
|
|||
if (qs->eventfd < 0)
|
||||
return -2;
|
||||
}
|
||||
#elif defined(__APPLE__)
|
||||
else if (qs->mode == QueueSignalledMode::PIPE) {
|
||||
ret = pipe(qs->pipe);
|
||||
if (ret < 0)
|
||||
return -2;
|
||||
}
|
||||
#endif
|
||||
else
|
||||
return -1;
|
||||
|
@ -131,12 +120,6 @@ int villas::node::queue_signalled_destroy(struct CQueueSignalled *qs)
|
|||
if (ret)
|
||||
return ret;
|
||||
}
|
||||
#elif defined(__APPLE__)
|
||||
else if (qs->mode == QueueSignalledMode::PIPE) {
|
||||
ret = close(qs->pipe[0]) + close(qs->pipe[1]);
|
||||
if (ret)
|
||||
return ret;
|
||||
}
|
||||
#endif
|
||||
else
|
||||
return -1;
|
||||
|
@ -168,14 +151,6 @@ int villas::node::queue_signalled_push(struct CQueueSignalled *qs, void *ptr)
|
|||
if (ret < 0)
|
||||
return ret;
|
||||
}
|
||||
#elif defined(__APPLE__)
|
||||
else if (qs->mode == QueueSignalledMode::PIPE) {
|
||||
int ret;
|
||||
uint8_t incr = 1;
|
||||
ret = write(qs->pipe[1], &incr, sizeof(incr));
|
||||
if (ret < 0)
|
||||
return ret;
|
||||
}
|
||||
#endif
|
||||
else
|
||||
return -1;
|
||||
|
@ -207,14 +182,6 @@ int villas::node::queue_signalled_push_many(struct CQueueSignalled *qs, void *pt
|
|||
if (ret < 0)
|
||||
return ret;
|
||||
}
|
||||
#elif defined(__APPLE__)
|
||||
else if (qs->mode == QueueSignalledMode::PIPE) {
|
||||
int ret;
|
||||
uint8_t incr = 1;
|
||||
ret = write(qs->pipe[1], &incr, sizeof(incr));
|
||||
if (ret < 0)
|
||||
return ret;
|
||||
}
|
||||
#endif
|
||||
else
|
||||
return -1;
|
||||
|
@ -249,14 +216,6 @@ int villas::node::queue_signalled_pull(struct CQueueSignalled *qs, void **ptr)
|
|||
if (ret < 0)
|
||||
break;
|
||||
}
|
||||
#elif defined(__APPLE__)
|
||||
else if (qs->mode == QueueSignalledMode::PIPE) {
|
||||
int ret;
|
||||
uint8_t incr = 1;
|
||||
ret = read(qs->pipe[0], &incr, sizeof(incr));
|
||||
if (ret < 0)
|
||||
break;
|
||||
}
|
||||
#endif
|
||||
else
|
||||
break;
|
||||
|
@ -298,14 +257,6 @@ int villas::node::queue_signalled_pull_many(struct CQueueSignalled *qs, void *pt
|
|||
if (ret < 0)
|
||||
break;
|
||||
}
|
||||
#elif defined(__APPLE__)
|
||||
else if (qs->mode == QueueSignalledMode::PIPE) {
|
||||
int ret;
|
||||
uint8_t incr = 1;
|
||||
ret = read(qs->pipe[0], &incr, sizeof(incr));
|
||||
if (ret < 0)
|
||||
break;
|
||||
}
|
||||
#endif
|
||||
else
|
||||
break;
|
||||
|
@ -345,15 +296,6 @@ int villas::node::queue_signalled_close(struct CQueueSignalled *qs)
|
|||
if (ret < 0)
|
||||
return ret;
|
||||
}
|
||||
#elif defined(__APPLE__)
|
||||
else if (qs->mode == QueueSignalledMode::PIPE) {
|
||||
int ret;
|
||||
uint64_t incr = 1;
|
||||
|
||||
ret = write(qs->pipe[1], &incr, sizeof(incr));
|
||||
if (ret < 0)
|
||||
return ret;
|
||||
}
|
||||
#endif
|
||||
else
|
||||
return -1;
|
||||
|
@ -367,9 +309,6 @@ int villas::node::queue_signalled_fd(struct CQueueSignalled *qs)
|
|||
#ifdef HAS_EVENTFD
|
||||
case QueueSignalledMode::EVENTFD:
|
||||
return qs->eventfd;
|
||||
#elif defined(__APPLE__)
|
||||
case QueueSignalledMode::PIPE:
|
||||
return qs->pipe[0];
|
||||
#endif
|
||||
default: { }
|
||||
}
|
||||
|
|
|
@ -58,11 +58,9 @@ Theory((size_t len, size_t align, struct memory::Type *mt), memory, aligned, .in
|
|||
|
||||
cr_assert(IS_ALIGNED(ptr, align), "Memory at %p is not alligned to %#zx byte bounary", ptr, align);
|
||||
|
||||
#ifndef __APPLE__
|
||||
if (mt == &memory::mmap_hugetlb) {
|
||||
cr_assert(IS_ALIGNED(ptr, HUGEPAGESIZE), "Memory at %p is not alligned to %#x byte bounary", ptr, HUGEPAGESIZE);
|
||||
}
|
||||
#endif
|
||||
|
||||
ret = memory::free(ptr);
|
||||
cr_assert_eq(ret, 0, "Failed to release memory: ret=%d, ptr=%p, len=%zu: %s", ret, ptr, len, strerror(errno));
|
||||
|
|
|
@ -92,9 +92,6 @@ static void * producer(void *ctx)
|
|||
srand((unsigned) time(0) + thread_get_id());
|
||||
size_t nops = rand() % 1000;
|
||||
|
||||
#ifdef __APPLE__
|
||||
#define pthread_yield pthread_yield_np
|
||||
#endif
|
||||
/* Wait for global start signal */
|
||||
while (p->start == 0)
|
||||
pthread_yield();
|
||||
|
|
Loading…
Add table
Reference in a new issue