This issue happens when using Structured PCD.
Build tool use set to store the cflags for compile PcdValueInit.c,
that is the order of cflags is disorder.
This patch make -U, /U flags appear before -D, /D
Cc: Liming Gao <liming.gao@intel.com>
Signed-off-by: Bob Feng <bob.c.feng@intel.com>
Reviewed-by: Liming Gao <liming.gao@intel.com>
elif len(ArchBuildOptions.keys()) > 1:\r
CommonBuildOptions = reduce(lambda x,y: x&y, ArchBuildOptions.values())\r
BuildOptions['COMMON'] |= CommonBuildOptions\r
elif len(ArchBuildOptions.keys()) > 1:\r
CommonBuildOptions = reduce(lambda x,y: x&y, ArchBuildOptions.values())\r
BuildOptions['COMMON'] |= CommonBuildOptions\r
- ValueList = list(BuildOptions['COMMON'])\r
+ ValueList = [item for item in BuildOptions['COMMON'] if item.startswith((r"/U","-U"))]\r
+ ValueList.extend([item for item in BuildOptions['COMMON'] if item.startswith((r"/D", "-D"))])\r
CC_FLAGS += " ".join(ValueList)\r
MakeApp += CC_FLAGS\r
\r
CC_FLAGS += " ".join(ValueList)\r
MakeApp += CC_FLAGS\r
\r