AROS: added arm-aros target to compiler and fpcmake

git-svn-id: trunk@34805 -
This commit is contained in:
marcus 2016-11-06 10:51:45 +00:00
parent c822e07f91
commit 86940dfb32
8 changed files with 82 additions and 5 deletions

View File

@ -404,7 +404,7 @@ unit agarmgas;
asmbin : 'as';
asmcmd : '-o $OBJ $EXTRAOPT $ASM';
supported_targets : [system_arm_linux,system_arm_wince,system_arm_gba,system_arm_palmos,system_arm_nds,
system_arm_embedded,system_arm_symbian,system_arm_android];
system_arm_embedded,system_arm_symbian,system_arm_android,system_arm_aros];
flags : [af_needar,af_smartlink_sections];
labelprefix : '.L';
comment : '# ';

View File

@ -956,7 +956,7 @@ implementation
asmcmd : '';
supported_targets : [system_arm_embedded,system_arm_darwin,
system_arm_linux,system_arm_gba,
system_arm_nds];
system_arm_nds,system_arm_aros];
flags : [af_outputbinary,af_smartlink_sections,af_supports_dwarf];
labelprefix : '.L';
comment : '';

View File

@ -62,6 +62,9 @@ implementation
{$ifndef NOTARGETBSD}
,t_bsd
{$endif}
{$ifndef NOTARGETAROS}
,t_aros
{$endif}
{**************************************
Assemblers

View File

@ -172,7 +172,8 @@
system_x86_64_iphonesim, { 87 }
system_aarch64_linux, { 88 }
system_i8086_win16, { 89 }
system_i8086_embedded { 90 }
system_i8086_embedded, { 90 }
system_arm_aros { 91 }
);
type

View File

@ -154,6 +154,68 @@ unit i_aros;
abi : abi_default;
llvmdatalayout : 'todo';
);
system_arm_aros_info : tsysteminfo =
(
system : system_arm_aros;
name : 'AROS for ARM';
shortname : 'AROS';
flags : [tf_files_case_aware, tf_smartlink_library, tf_has_winlike_resources];
cpu : cpu_arm;
unit_env : 'AROSUNITS';
extradefines : 'HASAMIGA';
exeext : '';
defext : '.def';
scriptext : '.sh';
smartext : '.sl';
unitext : '.ppu';
unitlibext : '.ppl';
asmext : '.s';
objext : '.o';
resext : '.res';
resobjext : '.or';
sharedlibext : '.library';
staticlibext : '.a';
staticlibprefix : 'libp';
sharedlibprefix : '';
sharedClibext : '.library';
staticClibext : '.a';
staticClibprefix : 'lib';
sharedClibprefix : '';
importlibprefix : 'libimp';
importlibext : '.a';
Cprefix : '';
newline : #10;
dirsep : '/';
assem : as_arm_elf32;
assemextern : as_gas;
link : ld_none;
linkextern : ld_aros;
ar : ar_gnu_ar;
res : res_elf;
dbg : dbg_stabs;
script : script_amiga;
endian : endian_little;
alignment :
(
procalign : 16;
loopalign : 4;
jumpalign : 0;
constalignmin : 0;
constalignmax : 8;
varalignmin : 0;
varalignmax : 16;
localalignmin : 0;
localalignmax : 4;
recordalignmin : 0;
recordalignmax : 16;
maxCrecordalign : 4
);
first_parm_offset : 8;
stacksize : 262144;
stackalign : 4;
abi : abi_default;
llvmdatalayout : 'todo';
);
implementation
@ -168,4 +230,10 @@ initialization
set_source_info(system_x86_64_aros_info);
{$endif AROS}
{$endif CPUX86_64}
{$ifdef CPUARM}
{$ifdef AROS}
set_source_info(system_arm_aros_info);
{$endif AROS}
{$endif CPUX86_64}
end.

View File

@ -260,5 +260,9 @@ initialization
RegisterLinker(ld_aros,TLinkeraros);
RegisterTarget(system_x86_64_aros_info);
{$endif x86_64}
{$ifdef arm}
RegisterLinker(ld_aros,TLinkeraros);
RegisterTarget(system_arm_aros_info);
{$endif arm}
RegisterRes(res_elf_info, TWinLikeResourceFile);
end.

View File

@ -174,7 +174,8 @@ const
{ 87 } 'iPhoneSim-x86-64',
{ 88 } 'Linux-AArch64',
{ 89 } 'Win16',
{ 90 } 'Embedded-i8086'
{ 90 } 'Embedded-i8086',
{ 91 } 'AROS-arm'
);
const

View File

@ -149,7 +149,7 @@ interface
{ java } ( false, false, false, false, false, false, false, false, false, false, false, false, false, false, true, false, false),
{ android } ( true, false, false, false, false, true, false, false, false, false, false, true, false, false, true, false, false),
{ msdos } ( false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, true , false),
{ aros } ( true, false, false, false, true, false, false, false, false, false, false, false, false, false, false, false, false),
{ aros } ( true, false, false, false, true, true, false, false, false, false, false, false, false, false, false, false, false),
{dragonfly} ( false, false, false, false, true, false, false, false, false, false, false, false, false, false, false, false, false),
{ win16 } ( false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, true , false)
);