ci: add build test for sdkconfig specified with abspath

On Windows, when path is specified as absolute for cmdl argument, cmake can
interpret parts of the path as invalid escape chars. For example "C:\Users\..."
will result in "Invalid character escape '\U'." Externally specified
paths should be converted into cmake's representation, which uses '/'.
This can be done e.g. by using 'get_filename_component()'. Currently
there doesn't seem to be any problem with this, but let's add a test for
this.

Suggested-by: Ivan Grokhotkov <ivan@espressif.com>
Signed-off-by: Frantisek Hrbata <frantisek.hrbata@espressif.com>
This commit is contained in:
Frantisek Hrbata 2023-03-31 09:22:38 +02:00
parent 2ffd3cef70
commit f6af455f57

View File

@ -133,3 +133,9 @@ def test_build_compiler_flags_no_overwriting(idf_py: IdfPyFunc) -> None:
# If the compiler flags are overriden, the following build command will # If the compiler flags are overriden, the following build command will
# cause issues at link time. # cause issues at link time.
idf_py('build', '-DCMAKE_C_FLAGS=', '-DCMAKE_CXX_FLAGS=') idf_py('build', '-DCMAKE_C_FLAGS=', '-DCMAKE_CXX_FLAGS=')
def test_build_with_sdkconfig_build_abspath(idf_py: IdfPyFunc, test_app_copy: Path) -> None:
build_path = test_app_copy / 'build_tmp'
sdkconfig_path = build_path / 'sdkconfig'
idf_py('-D', f'SDKCONFIG={sdkconfig_path}', '-B', str(build_path), 'build')