On May 7, 2019, at 7:40 AM, Leif Lindholm <leif.lindholm@linaro.org> wrote:Hi Fan Zhiju,
But where does the string come from that contains a .C suffix?
Is the tool internally converting things to uppercase, or is some
source file in the build incorrectly named?
[C-Code-File] | |
<InputFile> | |
?.c | |
?.C | |
?.cc | |
?.CC | |
?.cpp | |
?.Cpp | |
?.CPP | |
I am asking because it is not clear to me whether the patch resolves a
problem or hides one.
Best Regards,
Leif
On Tue, May 07, 2019 at 03:05:02AM +0000, Fan, ZhijuX wrote:This problem has nothing to do with the file system, We just use the
filename as a string to compare with other strings
Our unittest tested minplatform, Ovmf. This problem was found when
building a platform inside Intel.
We've tested it on Linux and Windows.
Any question, please let me know. Thanks.
Best Regards
Fan Zhiju
-----Original Message-----
From: afish@apple.com [mailto:afish@apple.com]
Sent: Tuesday, May 7, 2019 10:31 AM
To: devel@edk2.groups.io; Fan, ZhijuX <zhijux.fan@intel.com>
Cc: Gao, Liming <liming.gao@intel.com>; Feng, Bob C <bob.c.feng@intel.com>
Subject: Re: [edk2-devel] [PATCH V2] BaseTools:improve code to support C files with .C suffixes
This brings up a question? Do we tests on a file system that is case sensitive? Is this just lack of a test case?
Thanks,
Andrew FishOn May 6, 2019, at 7:22 PM, Fan, ZhijuX <zhijux.fan@intel.com> wrote:
BZ: https://bugzilla.tianocore.org/show_bug.cgi?id=1773
Build break if C file suffixes of named .C instead of .c Code not
recognize filenames with .C suffixes.
This patch adds code to Support both .c file and .C file
Cc: Bob Feng <bob.c.feng@intel.com>
Cc: Liming Gao <liming.gao@intel.com>
Signed-off-by: Zhiju.Fan <zhijux.fan@intel.com>
---
BaseTools/Source/Python/AutoGen/GenMake.py | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/BaseTools/Source/Python/AutoGen/GenMake.py
b/BaseTools/Source/Python/AutoGen/GenMake.py
index 0e0f9fd9b0..858ddedf8e 100644
--- a/BaseTools/Source/Python/AutoGen/GenMake.py
+++ b/BaseTools/Source/Python/AutoGen/GenMake.py
@@ -1035,7 +1035,8 @@ cleanlib:
CmdTargetDict[CmdSign] = "%s %s" % (CmdTargetDict[CmdSign], SingleCommandList[-1])
Index = CommandList.index(Item)
CommandList.pop(Index)
- if SingleCommandList[-1].endswith("%s%s.c" % (TAB_SLASH, CmdSumDict[CmdSign.lstrip('/Fo').rsplit(TAB_SLASH, 1)[0]])):
+ if SingleCommandList[-1].endswith("%s%s.c" % (TAB_SLASH, CmdSumDict[T.Target.SubDir])) or \
+ SingleCommandList[-1].endswith("%s%s.C" % (TAB_SLASH, CmdSumDict[T.Target.SubDir])):
Cpplist = CmdCppDict[T.Target.SubDir]
Cpplist.insert(0, '$(OBJLIST_%d): $(COMMON_DEPS)' % list(self.ObjTargetDict.keys()).index(T.Target.SubDir))
T.Commands[Index] = '%s\n\t%s' % ('
\\\n\t'.join(Cpplist), CmdTargetDict[CmdSign])
--
2.14.1.windows.1
<winmail.dat>