1
0
Fork 0
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:
Steffen Vogel 2022-03-14 19:37:29 -04:00
parent d72b19c2ec
commit ae1b064b5a
9 changed files with 5 additions and 105 deletions

View file

@ -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)

View file

@ -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>

View file

@ -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
};
};

View file

@ -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}

View file

@ -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;

View file

@ -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);
}

View file

@ -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: { }
}

View file

@ -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));

View file

@ -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();