[instance] fix multiple instance compilation (#4915)

This commit is contained in:
kangping
2020-04-30 12:27:42 -07:00
committed by GitHub
parent 47ebcbd184
commit c4b098f0d3
5 changed files with 40 additions and 2 deletions
+22
View File
@@ -153,6 +153,28 @@ jobs:
- name: Codecov
uses: codecov/codecov-action@v1
multiple-instance:
runs-on: ubuntu-18.04
env:
COVERAGE: 1
MULTIPLE_INSTANCE: 1
REFERENCE_DEVICE: 1
VIRTUAL_TIME: 1
steps:
- uses: actions/checkout@v2
- name: Bootstrap
run: |
python3 -m pip install -r tests/scripts/thread-cert/requirements.txt
- name: Build
run: |
./bootstrap
make -f examples/Makefile-simulation
- name: Run
run: |
VERBOSE=1 make -f examples/Makefile-simulation check
- name: Codecov
uses: codecov/codecov-action@v1
ncp:
runs-on: ubuntu-18.04
env:
+5
View File
@@ -161,6 +161,11 @@ if(OT_MTD_NETDIAG)
list(APPEND OT_PRIVATE_DEFINES "OPENTHREAD_CONFIG_TMF_NETWORK_DIAG_MTD_ENABLE=1")
endif()
option(OT_MULTIPLE_INSTANCE "enable multiple instances")
if(OT_MULTIPLE_INSTANCE)
list(APPEND OT_PRIVATE_DEFINES "OPENTHREAD_CONFIG_MULTIPLE_INSTANCE_ENABLE=1")
endif()
option(OT_PLATFORM_NETIF "enable platform netif support")
if(OT_PLATFORM_NETIF)
list(APPEND OT_PRIVATE_DEFINES "OPENTHREAD_CONFIG_PLATFORM_NETIF_ENABLE=1")
+5
View File
@@ -61,6 +61,7 @@ endif
LINK_RAW ?= 0
MAC_FILTER ?= 0
MTD_NETDIAG ?= 0
MULTIPLE_INSTANCE ?= 0
OTNS ?= 0
PLATFORM_UDP ?= 0
REFERENCE_DEVICE ?= 0
@@ -198,6 +199,10 @@ ifeq ($(MTD_NETDIAG),1)
COMMONCFLAGS += -DOPENTHREAD_CONFIG_TMF_NETWORK_DIAG_MTD_ENABLE=1
endif
ifeq ($(MULTIPLE_INSTANCE),1)
COMMONCFLAGS += -DOPENTHREAD_CONFIG_MULTIPLE_INSTANCE_ENABLE=1
endif
ifeq ($(PLATFORM_UDP),1)
COMMONCFLAGS += -DOPENTHREAD_CONFIG_PLATFORM_UDP_ENABLE=1
endif
+2 -2
View File
@@ -143,12 +143,12 @@ Instance *Instance::Init(void *aBuffer, size_t *aBufferSize)
{
Instance *instance = NULL;
VerifyOrExit(aBufferSize != NULL);
VerifyOrExit(aBufferSize != NULL, OT_NOOP);
// Make sure the input buffer is big enough
VerifyOrExit(sizeof(Instance) <= *aBufferSize, *aBufferSize = sizeof(Instance));
VerifyOrExit(aBuffer != NULL);
VerifyOrExit(aBuffer != NULL, OT_NOOP);
instance = new (aBuffer) Instance();
+6
View File
@@ -42,6 +42,9 @@
#include <openthread/error.h>
#include <openthread/heap.h>
#include <openthread/platform/logging.h>
#if OPENTHREAD_CONFIG_MULTIPLE_INSTANCE_ENABLE
#include <openthread/platform/memory.h>
#endif
#include "common/random_manager.hpp"
#include "common/tasklet.hpp"
@@ -261,6 +264,9 @@ public:
*
*/
Utils::Heap &GetHeap(void) { return mHeap; }
#else
void HeapFree(void *aPointer) { otPlatFree(aPointer); }
void *HeapCAlloc(size_t aCount, size_t aSize) { return otPlatCAlloc(aCount, aSize); }
#endif // OPENTHREAD_CONFIG_HEAP_EXTERNAL_ENABLE
#if OPENTHREAD_CONFIG_COAP_API_ENABLE