kopia lustrzana https://github.com/espressif/esp-idf
build system: fix quoting of fragments list passed to ldgen
rodzic
6b361d923c
commit
29489a3303
|
@ -53,23 +53,24 @@ function(__ldgen_process_template template output)
|
|||
|
||||
if($ENV{LDGEN_CHECK_MAPPING})
|
||||
set(ldgen_check "--check-mapping"
|
||||
"--check-mapping-exceptions=${idf_path}/tools/ci/check_ldgen_mapping_exceptions.txt")
|
||||
"--check-mapping-exceptions" "${idf_path}/tools/ci/check_ldgen_mapping_exceptions.txt")
|
||||
message(STATUS "Mapping check enabled in ldgen")
|
||||
endif()
|
||||
|
||||
add_custom_command(
|
||||
OUTPUT ${output}
|
||||
COMMAND ${python} ${idf_path}/tools/ldgen/ldgen.py
|
||||
--config ${sdkconfig}
|
||||
--fragments "$<JOIN:${ldgen_fragment_files},\t>"
|
||||
--input ${template}
|
||||
--output ${output}
|
||||
--kconfig ${root_kconfig}
|
||||
COMMAND ${python} "${idf_path}/tools/ldgen/ldgen.py"
|
||||
--config "${sdkconfig}"
|
||||
--fragments-list "${ldgen_fragment_files}"
|
||||
--input "${template}"
|
||||
--output "${output}"
|
||||
--kconfig "${root_kconfig}"
|
||||
--env-file "${config_env_path}"
|
||||
--libraries-file ${build_dir}/ldgen_libraries
|
||||
--objdump ${CMAKE_OBJDUMP}
|
||||
--libraries-file "${build_dir}/ldgen_libraries"
|
||||
--objdump "${CMAKE_OBJDUMP}"
|
||||
${ldgen_check}
|
||||
DEPENDS ${template} ${ldgen_fragment_files} ${ldgen_depends} ${SDKCONFIG}
|
||||
VERBATIM
|
||||
)
|
||||
|
||||
get_filename_component(_name ${output} NAME)
|
||||
|
|
|
@ -50,11 +50,20 @@ def main():
|
|||
help='Linker template file',
|
||||
type=argparse.FileType('r'))
|
||||
|
||||
argparser.add_argument(
|
||||
fragments_group = argparser.add_mutually_exclusive_group()
|
||||
|
||||
fragments_group.add_argument(
|
||||
'--fragments', '-f',
|
||||
type=argparse.FileType('r'),
|
||||
help='Input fragment files',
|
||||
nargs='+')
|
||||
nargs='+'
|
||||
)
|
||||
|
||||
fragments_group.add_argument(
|
||||
'--fragments-list',
|
||||
help='Input fragment files as a semicolon-separated list',
|
||||
type=str
|
||||
)
|
||||
|
||||
argparser.add_argument(
|
||||
'--libraries-file',
|
||||
|
@ -102,13 +111,18 @@ def main():
|
|||
args = argparser.parse_args()
|
||||
|
||||
input_file = args.input
|
||||
fragment_files = [] if not args.fragments else args.fragments
|
||||
libraries_file = args.libraries_file
|
||||
config_file = args.config
|
||||
output_path = args.output
|
||||
kconfig_file = args.kconfig
|
||||
objdump = args.objdump
|
||||
|
||||
fragment_files = []
|
||||
if args.fragments_list:
|
||||
fragment_files = args.fragments_list.split(';')
|
||||
elif args.fragments:
|
||||
fragment_files = args.fragments
|
||||
|
||||
check_mapping = args.check_mapping
|
||||
if args.check_mapping_exceptions:
|
||||
check_mapping_exceptions = [line.strip() for line in args.check_mapping_exceptions]
|
||||
|
|
Ładowanie…
Reference in New Issue