Conversation
* Without this export, in some cases wrong python interpreter is found.
* remove superfluous arguments, and remove unnecessary fckit-eval script leading to much shorter command string * without this, custom_command string length problems can occur
|
|
| set( _fckit_eval_script ${fckit_BASE_DIR}/libexec/fckit-eval.sh ) | ||
| set( FCKIT_VENV_EXE ${fckit_BASE_DIR}/@rel_venv_exe_path@ ) | ||
| set( FYPP ${_fckit_eval_script} ${FCKIT_VENV_EXE} -m fypp ) | ||
| set( FYPP ${FCKIT_VENV_EXE} -m fypp ) |
There was a problem hiding this comment.
The fckit_eval_script is necessary, because it allowed to exclude some arguments:
#23
There was a problem hiding this comment.
Which downstream app was the eval script causing a problem for? I solved a similar problem for FIELD_API in the past, so I might be able to help.
| list( APPEND _args "$<$<BOOL:${prop}>:-D $<JOIN:${prop}, -D >>" ) | ||
| endforeach() | ||
| endif() | ||
| endif() |
There was a problem hiding this comment.
This code is required to automatically give the fypp preprocessor access to the target compile definitions and target include directories.
What is the issue w.r.t. robustness here?
| set( options NO_LINE_NUMBERING ) | ||
| set( single_value_args "" ) | ||
| set( multi_value_args FYPP_ARGS FYPP_ARGS_EXCLUDE DEPENDS ) | ||
| set( multi_value_args FYPP_ARGS FYPP_ARGS_EXCLUDE DEPENDS INCLUDEDIRS ) |
There was a problem hiding this comment.
To be consistent with ecbuild_add_executable we can name this INCLUDES and also add DEFINITIONS
[ INCLUDES <path1> [<path2> ...] ]
[ DEFINITIONS <definition1> [<definition2> ...] ]
| set( options ) | ||
| set( single_value_args TARGET ) | ||
| set( multi_value_args ) | ||
| set( multi_value_args INCLUDEDIRS ) |
There was a problem hiding this comment.
To be consistent with ecbuild_add_test we should use INCLUDES, and they should already be part of the signature of add_fctest which just extends ecbuild_add_test.
Approach that allowed to get around path length and venv handling issues in easybuild-based installation of fckit.