build: kindly ask python not to polute src/ 40/32440/5
authorDamjan Marion <damarion@cisco.com>
Tue, 25 May 2021 17:28:21 +0000 (19:28 +0200)
committerFlorin Coras <florin.coras@gmail.com>
Thu, 27 May 2021 20:53:50 +0000 (20:53 +0000)
Type: make
Change-Id: I1ec82e0f3c19dee79f942996339240c73d4e380c
Signed-off-by: Damjan Marion <damarion@cisco.com>
src/CMakeLists.txt
src/cmake/api.cmake
src/vpp-api/vapi/CMakeLists.txt

index 1730e7b..8463120 100644 (file)
@@ -73,6 +73,7 @@ set(VPP_LIBRARY_DIR "lib" CACHE STRING "Relative library directory path")
 set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/${VPP_RUNTIME_DIR})
 set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/${VPP_LIBRARY_DIR})
 set(VPP_BINARY_DIR ${CMAKE_BINARY_DIR}/CMakeFiles)
+set(PYENV PYTHONPYCACHEPREFIX=${CMAKE_BINARY_DIR}/CMakeFile/__pycache__)
 
 if (CMAKE_BUILD_TYPE)
   add_compile_options(-g -fPIC -Werror -Wall)
index 007a906..831c2b1 100644 (file)
@@ -38,7 +38,7 @@ function(vpp_generate_api_c_header file)
   add_custom_command (
     OUTPUT ${OUTPUT_HEADERS}
     COMMAND mkdir -p ${output_dir}
-    COMMAND ${VPP_APIGEN}
+    COMMAND ${PYENV} ${VPP_APIGEN}
     ARGS ${includedir} --includedir ${CMAKE_SOURCE_DIR} --input ${CMAKE_CURRENT_SOURCE_DIR}/${file} --outputdir ${output_dir} --output ${output_name}
     DEPENDS ${VPP_APIGEN} ${CMAKE_CURRENT_SOURCE_DIR}/${file}
     COMMENT "Generating API header ${output_name}"
@@ -63,7 +63,7 @@ function(vpp_generate_api_json_header file dir component)
   endif()
   add_custom_command (OUTPUT ${output_name}
     COMMAND mkdir -p ${output_dir}
-    COMMAND ${VPP_APIGEN}
+    COMMAND ${PYENV} ${VPP_APIGEN}
     ARGS ${includedir} --includedir ${CMAKE_SOURCE_DIR} --input ${CMAKE_CURRENT_SOURCE_DIR}/${file} JSON --output ${output_name}
     DEPENDS ${VPP_APIGEN} ${CMAKE_CURRENT_SOURCE_DIR}/${file}
     COMMENT "Generating API header ${output_name}"
@@ -94,7 +94,7 @@ function(vpp_generate_vapi_c_header f)
   add_custom_command(
     OUTPUT ${output_name}
     WORKING_DIRECTORY ${VPP_BINARY_DIR}/vpp-api/vapi
-    COMMAND ${VPP_VAPI_C_GEN}
+    COMMAND ${PYENV} ${VPP_VAPI_C_GEN}
     ARGS --remove-path ${input}
     DEPENDS ${input} ${VPP_VAPI_C_GEN_DEPENDS}
     COMMENT "Generating VAPI C header ${output_name}"
@@ -121,7 +121,7 @@ function (vpp_generate_vapi_cpp_header f)
   add_custom_command(
     OUTPUT ${output_name}
     WORKING_DIRECTORY ${VPP_BINARY_DIR}/vpp-api/vapi
-    COMMAND ${VPP_VAPI_CPP_GEN}
+    COMMAND ${PYENV} ${VPP_VAPI_CPP_GEN}
     ARGS --gen-h-prefix=vapi --remove-path ${input}
     DEPENDS ${input} ${VPP_VAPI_CPP_GEN_DEPENDS}
     COMMENT "Generating VAPI C++ header ${output_name}"
index 626971f..53034bd 100644 (file)
@@ -69,7 +69,7 @@ if(SUBUNIT_INCLUDE_DIR AND SUBUNIT_LIB)
   add_custom_command(
     OUTPUT fake.api.vapi.h
     WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
-    COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/vapi_c_gen.py
+    COMMAND ${PYENV} ${CMAKE_CURRENT_SOURCE_DIR}/vapi_c_gen.py
     ARGS --remove-path ${CMAKE_CURRENT_SOURCE_DIR}/fake.api.json
     DEPENDS fake.api.json
     COMMENT "Generating fake VAPI C header ${output_name}"
@@ -78,7 +78,7 @@ if(SUBUNIT_INCLUDE_DIR AND SUBUNIT_LIB)
   add_custom_command(
     OUTPUT fake.api.vapi.hpp
     WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
-    COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/vapi_cpp_gen.py
+    COMMAND ${PYENV} ${CMAKE_CURRENT_SOURCE_DIR}/vapi_cpp_gen.py
     ARGS --remove-path ${CMAKE_CURRENT_SOURCE_DIR}/fake.api.json
     DEPENDS fake.api.json
     COMMENT "Generating fake VAPI C++ header ${output_name}"