AimRT/build.bat
ATT_POWER 7e4b5460c2
feat: add a new plugin: echo (#51)
* CI: change build worlflow image tag from v20240927 to latest

* feat/plugins: Add echo plugin

- Add echo plugin for message pass-through and logging
- Implement loading and management of different types of support packages
- Add support for multi-threaded executors
- Optimize log initialization and management logic
- Add support for YAML configuration files

* build: Update build scripts and enable Echo plugin

- Add build options for Echo plugin in build.bat, build.sh, test.bat, and test.sh scripts
- Optimize JSON serialization error handling and log output in echo_plugin.cc

* chore: Add Echo plugin related documentation

- Update release notes with Echo plugin feature description
- Add Echo plugin usage documentation
- Add Echo plugin example configuration and running instructions

* chore: format the code
- Add thread safety checks for Echo executor
- Optimize code structure to improve readability and maintainability

* choro: restructure JSON parsing logic

- Replace json-c with jsoncpp library
- Rewrite json_to_yaml function to improve code readability and robustness

* choro: adapt CMakeLists for Windows compatibility

* choro : turn off the echo plugin in windows

* feat(echo_plugin): Support YAML format message echo

- Modify GetYamlCpp.cmake to enable yaml-cpp installation
- Add yaml_convert.h and yaml_convert_test.cc in ros2_util
- Update echo_plugin to support YAML format message serialization and deserialization
- Add YAML serialization type support in aimrt_module_ros2_interface

* choro: Fix documentation

* choro : fix format and delete the extra support for echo about pb message type

* choro : format

* choro: add ros2 example for echo plugin and delete useless code

* choro: rename the echo example shell

* choro: fix some mistake

* chore: refactor type support package loader and migrate to core module

- Migrate TypeSupportPkgLoader from echo_plugin and record_playback_plugin to core/util directory
- Optimize log output, replace printf with AIMRT_INFO

* choro: replace the aimrt::common::util::AimRTException() to AIMRT_ASSERT

---------

Co-authored-by: yuguanlin <yuguanlin@agibot.com>
2024-10-31 20:03:42 +08:00

52 lines
1.3 KiB
Batchfile

@echo off
setlocal
cmake -B build ^
-DCMAKE_BUILD_TYPE=Release ^
-DAIMRT_INSTALL=ON ^
-DCMAKE_INSTALL_PREFIX="./build/install" ^
-DAIMRT_BUILD_TESTS=OFF ^
-DAIMRT_BUILD_EXAMPLES=ON ^
-DAIMRT_BUILD_DOCUMENT=ON ^
-DAIMRT_BUILD_RUNTIME=ON ^
-DAIMRT_BUILD_CLI_TOOLS=ON ^
-DAIMRT_BUILD_BAGTRANS=OFF ^
-DAIMRT_BUILD_PYTHON_RUNTIME=ON ^
-DAIMRT_USE_FMT_LIB=ON ^
-DAIMRT_BUILD_WITH_PROTOBUF=ON ^
-DAIMRT_USE_LOCAL_PROTOC_COMPILER=OFF ^
-DAIMRT_USE_PROTOC_PYTHON_PLUGIN=OFF ^
-DAIMRT_BUILD_WITH_ROS2=OFF ^
-DAIMRT_BUILD_NET_PLUGIN=ON ^
-DAIMRT_BUILD_MQTT_PLUGIN=OFF ^
-DAIMRT_BUILD_ZENOH_PLUGIN=OFF ^
-DAIMRT_BUILD_ICEORYX_PLUGIN=OFF ^
-DAIMRT_BUILD_ROS2_PLUGIN=OFF ^
-DAIMRT_BUILD_RECORD_PLAYBACK_PLUGIN=ON ^
-DAIMRT_BUILD_TIME_MANIPULATOR_PLUGIN=ON ^
-DAIMRT_BUILD_PARAMETER_PLUGIN=ON ^
-DAIMRT_BUILD_LOG_CONTROL_PLUGIN=ON ^
-DAIMRT_BUILD_OPENTELEMETRY_PLUGIN=OFF ^
-DAIMRT_BUILD_GRPC_PLUGIN=OFF ^
-DAIMRT_BUILD_ECHO_PLUGIN=OFF ^
-DAIMRT_BUILD_PYTHON_PACKAGE=ON ^
%*
if %errorlevel% neq 0 (
echo cmake failed
exit /b 1
)
if exist .\build\install (
rmdir /s /q .\build\install
)
cmake --build build --config Release --target install --parallel %NUMBER_OF_PROCESSORS%
if %errorlevel% neq 0 (
echo build failed
exit /b 1
)
endlocal