Add support for FreeRTOS and lwIP (#166)
Add support for FreeRTOS and lwIP Signed-off-by: Jeroen Koekkoek <jeroen@koekkoek.nl>
This commit is contained in:
parent
dba4e6d391
commit
aa2715f4fe
67 changed files with 3691 additions and 200 deletions
|
@ -19,9 +19,6 @@
|
|||
#include <assert.h>
|
||||
#include <limits.h>
|
||||
#include <math.h>
|
||||
#ifndef _WIN32
|
||||
#include <errno.h>
|
||||
#endif
|
||||
#include <getopt.h>
|
||||
|
||||
#include "dds/dds.h"
|
||||
|
@ -36,6 +33,10 @@
|
|||
#include "dds/ddsrt/avl.h"
|
||||
#include "dds/ddsrt/fibheap.h"
|
||||
|
||||
#if !defined(_WIN32) && !defined(LWIP_SOCKET)
|
||||
#include <errno.h>
|
||||
#endif
|
||||
|
||||
#define UDATA_MAGIC "DDSPerf:"
|
||||
#define UDATA_MAGIC_SIZE (sizeof (UDATA_MAGIC) - 1)
|
||||
|
||||
|
@ -1383,14 +1384,16 @@ static void subthread_arg_fini (struct subthread_arg *arg)
|
|||
free (arg->iseq);
|
||||
}
|
||||
|
||||
#if !DDSRT_WITH_FREERTOS
|
||||
static void signal_handler (int sig)
|
||||
{
|
||||
(void) sig;
|
||||
termflag = 1;
|
||||
dds_set_guardcondition (termcond, true);
|
||||
}
|
||||
#endif
|
||||
|
||||
#ifndef _WIN32
|
||||
#if !_WIN32 && !DDSRT_WITH_FREERTOS
|
||||
static uint32_t sigthread (void *varg)
|
||||
{
|
||||
sigset_t *set = varg;
|
||||
|
@ -1642,7 +1645,7 @@ int main (int argc, char *argv[])
|
|||
int opt;
|
||||
ddsrt_threadattr_t attr;
|
||||
ddsrt_thread_t pubtid, subtid, subpingtid, subpongtid;
|
||||
#ifndef _WIN32
|
||||
#if !_WIN32 && !DDSRT_WITH_FREERTOS
|
||||
sigset_t sigset, osigset;
|
||||
ddsrt_thread_t sigtid;
|
||||
#endif
|
||||
|
@ -1841,7 +1844,7 @@ int main (int argc, char *argv[])
|
|||
/* I hate Unix signals in multi-threaded processes ... */
|
||||
#ifdef _WIN32
|
||||
signal (SIGINT, signal_handler);
|
||||
#else
|
||||
#elif !DDSRT_WITH_FREERTOS
|
||||
sigemptyset (&sigset);
|
||||
sigaddset (&sigset, SIGINT);
|
||||
sigaddset (&sigset, SIGTERM);
|
||||
|
@ -1989,7 +1992,7 @@ int main (int argc, char *argv[])
|
|||
|
||||
#if _WIN32
|
||||
signal_handler (SIGINT);
|
||||
#else
|
||||
#elif !DDSRT_WITH_FREERTOS
|
||||
{
|
||||
/* get the attention of the signal handler thread */
|
||||
void (*osigint) (int);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue