Export symbols in order to support shared libraries (#54)

* Add BAC_ROUTING compile definition

* Reorder cmake

* Fix OpenSSL support: support both 1.0 and 1.1t pus

* Explicitly export symbols, hidden by default

* Build shared libraries on travis using cmake

* Learn Makefile about static library

* Fix build using mingw with cmake

* Do not cleanup twice or after potential free
This commit is contained in:
Anonymous Maarten
2020-03-06 22:42:03 +01:00
committed by GitHub
parent bb5fafc06a
commit 4a916468c6
174 changed files with 2200 additions and 91 deletions
+13
View File
@@ -8,6 +8,7 @@
#include <stdint.h>
#include <stdbool.h>
#include "bacnet/bacnet_stack_exports.h"
/**
* FIFO data structure
@@ -31,43 +32,54 @@ typedef struct fifo_buffer_t FIFO_BUFFER;
extern "C" {
#endif /* __cplusplus */
BACNET_STACK_EXPORT
unsigned FIFO_Count(
FIFO_BUFFER const *b);
BACNET_STACK_EXPORT
bool FIFO_Full(
FIFO_BUFFER const *b);
BACNET_STACK_EXPORT
bool FIFO_Available(
FIFO_BUFFER const *b,
unsigned count);
BACNET_STACK_EXPORT
bool FIFO_Empty(
FIFO_BUFFER const *b);
BACNET_STACK_EXPORT
uint8_t FIFO_Peek(
FIFO_BUFFER const *b);
BACNET_STACK_EXPORT
uint8_t FIFO_Get(
FIFO_BUFFER * b);
BACNET_STACK_EXPORT
unsigned FIFO_Pull(
FIFO_BUFFER * b,
uint8_t * data_bytes,
unsigned length);
BACNET_STACK_EXPORT
bool FIFO_Put(
FIFO_BUFFER * b,
uint8_t data_byte);
BACNET_STACK_EXPORT
bool FIFO_Add(
FIFO_BUFFER * b,
uint8_t * data_bytes,
unsigned count);
BACNET_STACK_EXPORT
void FIFO_Flush(
FIFO_BUFFER * b);
/* note: buffer_len must be a power of two */
BACNET_STACK_EXPORT
void FIFO_Init(
FIFO_BUFFER * b,
volatile uint8_t * buffer,
@@ -75,6 +87,7 @@ extern "C" {
#ifdef TEST
#include "ctest.h"
BACNET_STACK_EXPORT
void testFIFOBuffer(
Test * pTest);
#endif