* support of apptype native for windows after a suggestion of Brian Bi

git-svn-id: trunk@977 -
This commit is contained in:
florian 2005-08-29 19:03:12 +00:00
parent 5637845b48
commit d9f6a5a374
5 changed files with 19 additions and 3 deletions

View File

@ -160,6 +160,7 @@ than 255 characters. That's why using Ansi Strings}
{ Win32, OS/2 & MacOS application types }
tapptype = (
app_none,
app_native,
app_gui, { graphic user-interface application}
app_cui, { console application}
app_fs, { full-screen type application (OS/2 and EMX only) }

View File

@ -1101,6 +1101,13 @@ begin
while j<=length(More) do
begin
case More[j] of
'A':
begin
if UnsetBool(More, j) then
apptype:=app_native
else
apptype:=app_cui;
end;
'B':
begin
{ -WB200000 means set trefered base address

View File

@ -236,6 +236,8 @@ implementation
apptype:=app_gui
else if hs='CONSOLE' then
apptype:=app_cui
else if (hs='NATIVE') and (target_info.system in system_windows) then
apptype:=app_native
else if (hs='FS') and (target_info.system in [system_i386_os2,
system_i386_emx]) then
apptype:=app_fs
@ -853,7 +855,7 @@ implementation
Message(scan_w_only_one_resourcefile_supported)
else
current_module.resourcefiles.insert(FixFileName(s));
end
end
else
Message(scan_e_resourcefiles_not_supported);
end;

View File

@ -306,6 +306,8 @@ interface
system_linux : set of tsystem = [system_i386_linux,system_x86_64_linux,system_powerpc_linux,
system_arm_linux,system_sparc_linux,system_alpha_linux,system_m68k_linux,
system_x86_6432_linux];
{ all real windows systems, no cripple ones like wince, wdosx et. al. }
system_windows : set of tsystem = [system_i386_win32,system_x86_64_win64,system_ia64_win64];
cpu2str : array[TSystemCpu] of string =
('','i386','m68k','alpha','powerpc','sparc','vm','ia64','x86_64',

View File

@ -1037,7 +1037,7 @@ begin
AsBinStr:=FindUtil(utilsprefix+'as');
if RelocSection then
RelocStr:='--base-file base.$$$';
if target_info.system in [system_arm_wince,system_i386_wince] then
if target_info.system in [system_arm_wince,system_i386_wince] then
begin
AppTypeStr:='--subsystem wince';
if apptype <> app_gui then
@ -1285,6 +1285,8 @@ begin
if (cs_link_extern in aktglobalswitches) then
begin
case apptype of
app_native :
cmdstr:='--subsystem native';
app_gui :
cmdstr:='--subsystem gui';
app_cui :
@ -1325,6 +1327,8 @@ begin
peheader.Subsystem:=9
else
case apptype of
app_native :
peheader.Subsystem:=1;
app_gui :
peheader.Subsystem:=2;
app_cui :
@ -1662,7 +1666,7 @@ initialization
RegisterDLLScanner(system_i386_win32,TDLLScannerWin32);
RegisterRes(res_gnu_windres_info);
RegisterTarget(system_i386_win32_info);
RegisterExternalLinker(system_i386_wince_info,TLinkerWin32);
RegisterImport(system_i386_wince,TImportLibWin32);
RegisterExport(system_i386_wince,TExportLibWin32);