Port examples to Xenomai3

This commit is contained in:
Bjarne von Horn
2024-01-30 14:48:33 +01:00
parent 3ba71d5702
commit 64adc0ce16
5 changed files with 36 additions and 3 deletions

View File

@@ -40,6 +40,11 @@ SUBDIRS += \
xenomai \
xenomai_posix
endif
if ENABLE_XENOMAI_V3
SUBDIRS += \
xenomai \
xenomai_posix
endif
if ENABLE_RTAI
SUBDIRS += \

View File

@@ -25,13 +25,26 @@ ec_xenomai_example_SOURCES = main.c
ec_xenomai_example_CFLAGS = \
-Wall \
-I$(top_srcdir)/include \
-I$(top_srcdir)/include
ec_xenomai_example_LDFLAGS = \
-L$(top_builddir)/lib/.libs -lethercat_rtdm
if ENABLE_XENOMAI_V3
ec_xenomai_example_CFLAGS += \
-DXENOMAI_API_V3 \
$(XENOMAI_ALCHEMY_CFLAGS)
ec_xenomai_example_LDFLAGS += \
$(XENOMAI_ALCHEMY_LDFLAGS)
else
ec_xenomai_example_CFLAGS += \
$(XENOMAI_NATIVE_CFLAGS) \
$(XENOMAI_RTDM_CFLAGS)
ec_xenomai_example_LDFLAGS = \
-L$(top_builddir)/lib/.libs -lethercat_rtdm \
ec_xenomai_example_LDFLAGS += \
$(XENOMAI_NATIVE_LDFLAGS) \
$(XENOMAI_RTDM_LDFLAGS)
endif
#------------------------------------------------------------------------------

View File

@@ -29,12 +29,18 @@
#include <sys/types.h>
#include <unistd.h>
#include <sys/mman.h>
#ifdef XENOMAI_API_V3
#include <alchemy/task.h>
#include <alchemy/sem.h>
enum {T_FPU = 0};
#else
#include <rtdm/rtdm.h>
#include <native/task.h>
#include <native/sem.h>
#include <native/mutex.h>
#include <native/timer.h>
#include <rtdk.h>
#endif
#include <pthread.h>
#include "ecrt.h"
@@ -201,8 +207,10 @@ int main(int argc, char *argv[])
ec_slave_config_t *sc;
int ret;
#ifndef XENOMAI_API_V3
/* Perform auto-init of rt_print buffers if the task doesn't do so */
rt_print_auto_init(1);
#endif
signal(SIGTERM, signal_handler);
signal(SIGINT, signal_handler);

View File

@@ -29,6 +29,11 @@ ec_xenomai_posix_example_CFLAGS = \
$(XENOMAI_POSIX_CFLAGS) \
$(XENOMAI_RTDM_CFLAGS)
if ENABLE_XENOMAI_V3
ec_xenomai_posix_example_CFLAGS += \
-DXENOMAI_API_V3
endif
ec_xenomai_posix_example_LDFLAGS = \
-L$(top_builddir)/lib/.libs -lethercat_rtdm \
$(XENOMAI_POSIX_LDFLAGS) \

View File

@@ -32,8 +32,10 @@
#include <sys/mman.h>
#include <time.h>
#ifndef XENOMAI_API_V3
#include <rtdm/rtdm.h>
#include <rtdk.h>
#endif
#include "ecrt.h"