tools/ldgen: Parse paths with Unicode characters in archives

Closes https://github.com/espressif/esp-idf/issues/5996
This commit is contained in:
Roland Dobai 2020-10-20 11:38:15 +02:00
parent 4a3e7bc40d
commit ef43198018
2 changed files with 5 additions and 5 deletions

View file

@ -21,7 +21,7 @@ import fnmatch
from fragments import Sections, Scheme, Mapping, Fragment from fragments import Sections, Scheme, Mapping, Fragment
from pyparsing import Suppress, White, ParseException, Literal, Group, ZeroOrMore from pyparsing import Suppress, White, ParseException, Literal, Group, ZeroOrMore
from pyparsing import Word, OneOrMore, nums, alphanums, alphas, Optional, LineEnd, printables from pyparsing import Word, OneOrMore, nums, alphanums, alphas, Optional, restOfLine
from ldgen_common import LdGenFailure from ldgen_common import LdGenFailure
@ -608,9 +608,9 @@ class SectionsInfo(dict):
first_line = sections_info_file.readline() first_line = sections_info_file.readline()
archive_path = (Literal("In archive").suppress() + archive_path = (Literal("In archive").suppress() +
# trim the last character from archive_path, : White().suppress() +
Word(printables + " ").setResultsName("archive_path").setParseAction(lambda t: t[0][:-1]) + # trim the last character (:) from archive_path
LineEnd()) restOfLine.setResultsName("archive_path").setParseAction(lambda t: t[0][:-1]))
parser = archive_path parser = archive_path
results = None results = None

View file

@ -1,4 +1,4 @@
In archive libfreertos.a: In archive /home/user/ãóç+ěščřžýáíé/build/esp-idf/freertos/libfreertos.a:
FreeRTOS-openocd.c.obj: file format elf32-xtensa-le FreeRTOS-openocd.c.obj: file format elf32-xtensa-le