Passing lists or strings with semi-colon to add_custom_command

What is the correct way (if any) to pass a variable containing a semi-colon ; as an argument to COMMAND for add_custom_command() ? I especially would like to pass a CMake List, which is usually represented as a semi-colon-separated string when, e.g., printing it out with message.

It always gets replaced by a space in my case, I tried VERBATIM but this just add quotes. COMMAND_EXPAND_LISTS does nothing in my case.

I found a solution, replacing ; with \\; will ultimately escape de semi-colon enough for it to arrive as the executing shell:

string(REPLACE ";" "\\;" ADDITIONAL_CMAKE_PREFIX_PATH "${CMAKE_PREFIX_PATH}")
add_custom_target(
    pybuild ALL
    COMMAND
        ${CMAKE_COMMAND} -E env CMAKE_ARGS=-DADDITIONAL_CMAKE_PREFIX_PATH="${ADDITIONAL_CMAKE_PREFIX_PATH}"
            ${PYTHON_ENV_DIR}/bin/pip install -e path/
    ...
    )