On 07/22/15 05:05, Scott Duplichan wrote: > When a quoted string is used as initialization data in a DEC file PCD > entry, the PCD data type in that entry must be VOID*. The created > AutoGen.c defines the PCD data as UINT8[] or UINT16[], depending on > the string type. The created AutoGen.h, however, declares the PCD data > as VOID*. For a standard compile/link, this works because AutoGen.c > doesn't include AutoGen.h. But when GCC LTO is used, the link time > code generation detects the mismatch and the build fails. This > change makes the AutoGen.h PCD data declaration match the AutoGen.c > definition. > > Contributed-under: TianoCore Contribution Agreement 1.0 > Signed-off-by: Scott Duplichan <sc...@notabs.org> > --- > > BaseTools/Source/Python/AutoGen/GenC.py | 2 ++ > 1 file changed, 2 insertions(+) > > diff --git a/BaseTools/Source/Python/AutoGen/GenC.py > b/BaseTools/Source/Python/AutoGen/GenC.py > index e73ba79..84bd607 100644 > --- a/BaseTools/Source/Python/AutoGen/GenC.py > +++ b/BaseTools/Source/Python/AutoGen/GenC.py > @@ -1088,6 +1088,8 @@ def CreateLibraryPcdCode(Info, AutoGenC, AutoGenH, Pcd): > if PcdItemType == TAB_PCDS_FIXED_AT_BUILD or PcdItemType == > TAB_PCDS_FEATURE_FLAG: > key = ".".join((Pcd.TokenSpaceGuidCName,Pcd.TokenCName)) > > + if DatumType == 'VOID*' and Array == '[]': > + DatumType = ['UINT8', 'UINT16'][Pcd.DefaultValue[0] == 'L'] > AutoGenH.Append('extern const %s _gPcd_FixedAtBuild_%s%s;\n' > %(DatumType, TokenCName, Array)) > AutoGenH.Append('#define %s %s_gPcd_FixedAtBuild_%s\n' > %(GetModeName, Type, TokenCName)) > AutoGenH.Append('//#define %s ASSERT(FALSE) // It is not allowed > to set value for a FIXED_AT_BUILD PCD\n' % SetModeName) > > > _______________________________________________ > edk2-devel mailing list > edk2-devel@lists.01.org > https://lists.01.org/mailman/listinfo/edk2-devel >
Until the SVN outage at sourceforge.net gets resolved, we plan to commit patches that are ready for merging to the "master" branch of the git repository at <https://github.com/tianocore/edk2-svn-offline.git>. Please see the announcement: http://thread.gmane.org/gmane.comp.bios.edk2.devel/227 This particular patch (or series) appears ready for merging, therefore it is being picked up: http://thread.gmane.org/gmane.comp.bios.edk2.devel/227/focus=251 Further development should be based on edk2-svn-offline/master, until the SVN outage is fixed. At that point the accumulated patches will be mass-committed from edk2-svn-offline/master to SVN. Thanks Laszlo _______________________________________________ edk2-devel mailing list edk2-devel@lists.01.org https://lists.01.org/mailman/listinfo/edk2-devel