How to remove BASE_DIRS of FILE_SET from INTERFACE_INCLUDE_DIRECTORIES property

I’m using CMake 3.23.0 to enjoy the FILE_SET feature.

However, I don’t want to add BASE_DIRS of FILE_SET into INTERFACE_INCLUDE_DIRECTORIES property.

I can remove it from BUILD_INTERFACE, but how to remove from INSTALL_INTERFACE?

add_library(Math SHARED)
file(GLOB_RECURSE MathHeader ${MathRoot}/*.h ${MathRoot}/*.hpp)
target_sources(Math INTERFACE FILE_SET HEADERS FILES ${MathHeader})

# it's ok for me , to remove the BASE_DIRS from INTERFACE_INCLUDE_DIRECTORIES under this scope
# Remove the relative FILE_SET HEADERS BASE_DIRS from INTERFACE_INCLUDE_DIRECTORIES property
get_target_property(include_dirs Math INTERFACE_INCLUDE_DIRECTORIES)
list(REMOVE_ITEM include_dirs "$<BUILD_INTERFACE:${MathRoot}>")
set_target_properties(Math PROPERTIES INTERFACE_INCLUDE_DIRECTORIES "${include_dirs}")

# but, how to remove BASE_DIRS from INTERFACE_INCLUDE_DIRECTORIES property of EXPORT install target?

install(TARGETS Math
EXPORT MathTargets
RUNTIME DESTINATION bin # Executables & DLLs 
LIBRARY DESTINATION lib # Shared libraries, except DLLs
ARCHIVE DESTINATION lib # DLL import libraries & Static libraries .lib
FILE_SET HEADERS DESTINATION math/# FILE_SET
)

after installing Math target (install with EXPORT), I will get an automatically generated MathTargets.cmake file which contains this statements:

if(NOT CMAKE_VERSION VERSION_LESS "3.23.0")
  target_sources(Math
    INTERFACE
      FILE_SET "HEADERS"
      TYPE "HEADERS"
      BASE_DIRS "${_IMPORT_PREFIX}/xx/math"
      FILES "${_IMPORT_PREFIX}/xx/math/Common.h" "${_IMPORT_PREFIX}/xx/math/Constants.h" "${_IMPORT_PREFIX}/xx/math/Operator.h" 
  )
endif()

then linking Math will bring the BASE_DIRS into INTERFACE_INCLUDE_DIRECTORIES property.

How to remove BASE_DIRS from INTERFACE_INCLUDE_DIRECTORIES property?

What if you use PRIVATE instead of INTERFACE for the visibility of the header sources?