diff --git a/tools/ldgen/generation.py b/tools/ldgen/generation.py index 4c0f1a8c4..b031f8e05 100644 --- a/tools/ldgen/generation.py +++ b/tools/ldgen/generation.py @@ -21,7 +21,7 @@ import fnmatch from fragments import Sections, Scheme, Mapping, Fragment 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 @@ -608,9 +608,9 @@ class SectionsInfo(dict): first_line = sections_info_file.readline() archive_path = (Literal("In archive").suppress() + - # trim the last character from archive_path, : - Word(printables + " ").setResultsName("archive_path").setParseAction(lambda t: t[0][:-1]) + - LineEnd()) + White().suppress() + + # trim the last character (:) from archive_path + restOfLine.setResultsName("archive_path").setParseAction(lambda t: t[0][:-1])) parser = archive_path results = None diff --git a/tools/ldgen/test/data/sections.info b/tools/ldgen/test/data/sections.info index db450cfba..860d2163f 100644 --- a/tools/ldgen/test/data/sections.info +++ b/tools/ldgen/test/data/sections.info @@ -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