Files
Jonathan Hui 47860a4eb4 [nexus] move multiple instance config to nexus config header (#12890)
This commit moves the `OPENTHREAD_CONFIG_MULTIPLE_INSTANCE_ENABLE`
configuration from the build scripts to the nexus-specific core
configuration header file.

Specifically:
- Added `#define OPENTHREAD_CONFIG_MULTIPLE_INSTANCE_ENABLE 1` to
  `tests/nexus/openthread-core-nexus-config.h`.
- Removed `-DOT_MULTIPLE_INSTANCE=ON` from `tests/nexus/build.sh`.
- Removed `-DOT_MULTIPLE_INSTANCE=ON` from `tests/fuzz/oss-fuzz-build`.

This change centralizes nexus-specific configurations in the header
file, making the build scripts cleaner and ensuring consistent
configuration across different build environments that use the
nexus core config."
2026-04-14 13:12:29 -05:00

65 lines
2.5 KiB
Bash
Executable File

#!/bin/bash
#
# Copyright (c) 2021, The OpenThread Authors.
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
# 1. Redistributions of source code must retain the above copyright
# notice, this list of conditions and the following disclaimer.
# 2. Redistributions in binary form must reproduce the above copyright
# notice, this list of conditions and the following disclaimer in the
# documentation and/or other materials provided with the distribution.
# 3. Neither the name of the copyright holder nor the
# names of its contributors may be used to endorse or promote products
# derived from this software without specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
set -euxo pipefail
git submodule update --init --recursive --depth 1
(
mkdir build
cd build || exit
cmake -GNinja \
-DCMAKE_C_FLAGS="${CFLAGS}" \
-DCMAKE_CXX_FLAGS="${CXXFLAGS}" \
-DOT_COMPILE_WARNING_AS_ERROR=ON \
-DOT_FUZZ_TARGETS=ON \
-DOT_PLATFORM=nexus \
-DOT_THREAD_VERSION=1.4 \
-DOT_APP_CLI=OFF \
-DOT_APP_NCP=OFF \
-DOT_APP_RCP=OFF \
-DOT_PROJECT_CONFIG=../tests/nexus/openthread-core-nexus-config.h \
..
ninja
)
find . -name '*-fuzzer' -exec cp -v '{}' "$OUT" ';'
find . -name '*-fuzzer.dict' -exec cp -v '{}' "$OUT" ';'
find . -name '*-fuzzer.options' -exec cp -v '{}' "$OUT" ';'
fuzzers=$(find build/tests/fuzz -name "*-fuzzer")
for f in $fuzzers; do
fuzzer=$(basename "$f" -fuzzer)
if [ -d "tests/fuzz/corpora/${fuzzer}" ]; then
zip -j "$OUT/$(basename "$f")"_seed_corpus.zip tests/fuzz/corpora/"${fuzzer}"/*
fi
done