mirror of
https://github.com/reactos/reactos.git
synced 2025-08-04 09:06:22 +00:00
add a 'unicode' property to modules (not yet supported by mingw, need to add a library for unicode builds some day)
svn path=/trunk/; revision=18633
This commit is contained in:
parent
068ceb8c0f
commit
f7dd935bcd
2 changed files with 26 additions and 2 deletions
|
@ -248,6 +248,23 @@ Module::Module ( const Project& project,
|
|||
else
|
||||
extension = GetDefaultModuleExtension ();
|
||||
|
||||
att = moduleNode.GetAttribute ( "unicode", false );
|
||||
if ( att != NULL )
|
||||
{
|
||||
const char* p = att->value.c_str();
|
||||
if ( !stricmp ( p, "true" ) || !stricmp ( p, "yes" ) )
|
||||
isUnicode = true;
|
||||
else if ( !stricmp ( p, "false" ) || !stricmp ( p, "no" ) )
|
||||
isUnicode = false;
|
||||
else
|
||||
{
|
||||
throw InvalidAttributeValueException (
|
||||
moduleNode.location,
|
||||
"unicode",
|
||||
att->value );
|
||||
}
|
||||
}
|
||||
|
||||
att = moduleNode.GetAttribute ( "entrypoint", false );
|
||||
if ( att != NULL )
|
||||
entrypoint = att->value;
|
||||
|
@ -680,9 +697,15 @@ Module::GetDefaultModuleEntrypoint () const
|
|||
return "_DllMain@12";
|
||||
case Win32CUI:
|
||||
case Test:
|
||||
return "_mainCRTStartup";
|
||||
if ( isUnicode )
|
||||
return "_wmainCRTStartup";
|
||||
else
|
||||
return "_mainCRTStartup";
|
||||
case Win32GUI:
|
||||
return "_WinMainCRTStartup";
|
||||
if ( isUnicode )
|
||||
return "_wWinMainCRTStartup";
|
||||
else
|
||||
return "_WinMainCRTStartup";
|
||||
case KernelModeDriver:
|
||||
return "_DriverEntry@8";
|
||||
case BuildTool:
|
||||
|
|
|
@ -222,6 +222,7 @@ public:
|
|||
ModuleType type;
|
||||
ImportLibrary* importLibrary;
|
||||
bool mangledSymbols;
|
||||
bool isUnicode;
|
||||
Bootstrap* bootstrap;
|
||||
IfableData non_if_data;
|
||||
std::vector<Invoke*> invocations;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue