From: Florin Coras Date: Fri, 3 Oct 2025 01:47:56 +0000 (-0400) Subject: vppinfra api: remove vppinfra api dependency X-Git-Url: https://gerrit.fd.io/r/gitweb?a=commitdiff_plain;h=refs%2Fchanges%2F25%2F43825%2F2;p=vpp.git vppinfra api: remove vppinfra api dependency vppinfra should not dependend on api generated files. Move jsonformat.[ch] to vlibapi. Type: refactor Change-Id: Ia8b46fd73e95eb90c86a0b3402b3a391ba0f4bcd Signed-off-by: Florin Coras --- diff --git a/src/tools/vppapigen/vppapigen_c.py b/src/tools/vppapigen/vppapigen_c.py index 3cd52df1ad0..4192f07e9d0 100755 --- a/src/tools/vppapigen/vppapigen_c.py +++ b/src/tools/vppapigen/vppapigen_c.py @@ -66,7 +66,7 @@ class ToJSON: write("#ifndef included_{}_api_tojson_h\n".format(self.module)) write("#define included_{}_api_tojson_h\n".format(self.module)) write("#include \n\n") - write("#include \n\n") + write("#include \n\n") if self.module == "interface_types": write("#define vl_printfun\n") write("#include \n\n") @@ -338,7 +338,7 @@ class FromJSON: write("#ifndef included_{}_api_fromjson_h\n".format(self.module)) write("#define included_{}_api_fromjson_h\n".format(self.module)) write("#include \n\n") - write("#include \n\n") + write("#include \n\n") write('#pragma GCC diagnostic ignored "-Wunused-label"\n') def is_base_type(self, t): diff --git a/src/vlibapi/CMakeLists.txt b/src/vlibapi/CMakeLists.txt index 6476b5a2f33..6beca8cde4a 100644 --- a/src/vlibapi/CMakeLists.txt +++ b/src/vlibapi/CMakeLists.txt @@ -17,6 +17,7 @@ add_vpp_library (vlibapi api_format.c node_serialize.c memory_shared.c + jsonformat.c INSTALL_HEADERS api.h @@ -25,5 +26,6 @@ add_vpp_library (vlibapi api_types.h vat_helper_macros.h memory_shared.h + jsonformat.h ) diff --git a/src/vppinfra/jsonformat.c b/src/vlibapi/jsonformat.c similarity index 99% rename from src/vppinfra/jsonformat.c rename to src/vlibapi/jsonformat.c index 73cb94769d8..67a04717e94 100644 --- a/src/vppinfra/jsonformat.c +++ b/src/vlibapi/jsonformat.c @@ -17,7 +17,7 @@ #include #include #include -#include +#include #include "jsonformat.h" #define _(T) \ diff --git a/src/vppinfra/jsonformat.h b/src/vlibapi/jsonformat.h similarity index 98% rename from src/vppinfra/jsonformat.h rename to src/vlibapi/jsonformat.h index 062e4e188ef..6e71a47c809 100644 --- a/src/vppinfra/jsonformat.h +++ b/src/vlibapi/jsonformat.h @@ -18,8 +18,7 @@ #include #include -#include -#include +/* vppapigen generated types */ #include #include diff --git a/src/vppinfra/CMakeLists.txt b/src/vppinfra/CMakeLists.txt index 131f5a5b530..8b81489f6fb 100644 --- a/src/vppinfra/CMakeLists.txt +++ b/src/vppinfra/CMakeLists.txt @@ -59,7 +59,7 @@ install( add_definitions(-fvisibility=hidden) # Ensure symbols from cJSON are exported -set_source_files_properties( cJSON.c jsonformat.c PROPERTIES +set_source_files_properties( cJSON.c PROPERTIES COMPILE_DEFINITIONS " CJSON_API_VISIBILITY " ) ############################################################################## @@ -80,7 +80,6 @@ set(VPPINFRA_SRCS hash.c heap.c interrupt.c - jsonformat.c longjmp.S macros.c maplog.c @@ -169,7 +168,6 @@ set(VPPINFRA_HEADERS hash.h heap.h interrupt.h - jsonformat.h lb_hash_hash.h llist.h lock.h diff --git a/test/Makefile b/test/Makefile index dbea2d1556b..b677e5c9b8f 100644 --- a/test/Makefile +++ b/test/Makefile @@ -387,7 +387,7 @@ COV_REM_TODO_NO_TEST="*/vpp-api/client/*" \ "*/vppinfra/bihash_vec8_8.h" "*/vppinfra/maplog.c" \ "*/vppinfra/format_table.c" "*/vppinfra/timing_wheel.c" \ "*/vppinfra/macros.c" "*/vppinfra/valloc.c" \ - "*/vppinfra/jsonformat.c" "*/vppinfra/vector/array_mask.h" \ + "*/vlibapi/jsonformat.c" "*/vppinfra/vector/array_mask.h" \ "*/vppinfra/vector/toeplitz.c" "*/plugins/vrrp/vrrp_packet.h" \ "*/vnet/srv6/sr.h" "*/vlibapi/api_format.c" \ "*/vlibapi/node_serialize.c" "*/plugins/quic/error.c" \