Browse Source

* changed the supported targets for assembler writers to a set, and
(hopefully correctly) limited all assembler writers to only the
OSes they support (mantis #11801)

git-svn-id: trunk@12622 -

Jonas Maebe 16 years ago
parent
commit
b1c3f76ff9

+ 2 - 2
compiler/arm/agarmgas.pas

@@ -269,7 +269,7 @@ unit agarmgas;
             idtxt  : 'AS';
             idtxt  : 'AS';
             asmbin : 'as';
             asmbin : 'as';
             asmcmd : '-o $OBJ $ASM';
             asmcmd : '-o $OBJ $ASM';
-            supported_target : system_any;
+            supported_targets : [system_arm_linux,system_arm_wince,system_arm_gba,system_arm_palmos,system_arm_nds,system_arm_embedded,system_arm_symbian];
             flags : [af_allowdirect,af_needar,af_smartlink_sections];
             flags : [af_allowdirect,af_needar,af_smartlink_sections];
             labelprefix : '.L';
             labelprefix : '.L';
             comment : '# ';
             comment : '# ';
@@ -281,7 +281,7 @@ unit agarmgas;
             idtxt  : 'AS-Darwin';
             idtxt  : 'AS-Darwin';
             asmbin : 'as';
             asmbin : 'as';
             asmcmd : '-o $OBJ $ASM -arch arm';
             asmcmd : '-o $OBJ $ASM -arch arm';
-            supported_target : system_any;
+            supported_targets : [system_arm_darwin];
             flags : [af_allowdirect,af_needar,af_smartlink_sections,af_supports_dwarf];
             flags : [af_allowdirect,af_needar,af_smartlink_sections,af_supports_dwarf];
             labelprefix : 'L';
             labelprefix : 'L';
             comment : '# ';
             comment : '# ';

+ 1 - 1
compiler/avr/agavrgas.pas

@@ -168,7 +168,7 @@ unit agavrgas;
             idtxt  : 'AS';
             idtxt  : 'AS';
             asmbin : 'as';
             asmbin : 'as';
             asmcmd : '-o $OBJ $ASM';
             asmcmd : '-o $OBJ $ASM';
-            supported_target : system_any;
+            supported_targets : [system_avr_embedded];
             flags : [af_allowdirect,af_needar,af_smartlink_sections];
             flags : [af_allowdirect,af_needar,af_smartlink_sections];
             labelprefix : '.L';
             labelprefix : '.L';
             comment : '# ';
             comment : '# ';

+ 7 - 7
compiler/i386/ag386nsm.pas

@@ -1080,7 +1080,7 @@ interface
             idtxt  : 'NASMCOFF';
             idtxt  : 'NASMCOFF';
             asmbin : 'nasm';
             asmbin : 'nasm';
             asmcmd : '-f coff -o $OBJ $ASM';
             asmcmd : '-f coff -o $OBJ $ASM';
-            supported_target : system_i386_go32v2;
+            supported_targets : [system_i386_go32v2];
             flags : [af_allowdirect,af_needar,af_no_debug];
             flags : [af_allowdirect,af_needar,af_no_debug];
             labelprefix : '..@';
             labelprefix : '..@';
             comment : '; ';
             comment : '; ';
@@ -1092,7 +1092,7 @@ interface
             idtxt  : 'NASMWIN32';
             idtxt  : 'NASMWIN32';
             asmbin : 'nasm';
             asmbin : 'nasm';
             asmcmd : '-f win32 -o $OBJ $ASM';
             asmcmd : '-f win32 -o $OBJ $ASM';
-            supported_target : system_i386_win32;
+            supported_targets : [system_i386_win32];
             flags : [af_allowdirect,af_needar,af_no_debug];
             flags : [af_allowdirect,af_needar,af_no_debug];
             labelprefix : '..@';
             labelprefix : '..@';
             comment : '; ';
             comment : '; ';
@@ -1104,7 +1104,7 @@ interface
             idtxt  : 'NASMOBJ';
             idtxt  : 'NASMOBJ';
             asmbin : 'nasm';
             asmbin : 'nasm';
             asmcmd : '-f obj -o $OBJ $ASM';
             asmcmd : '-f obj -o $OBJ $ASM';
-            supported_target : system_any; { what should I write here ?? }
+            supported_targets : [system_i386_embedded];
             flags : [af_allowdirect,af_needar,af_no_debug];
             flags : [af_allowdirect,af_needar,af_no_debug];
             labelprefix : '..@';
             labelprefix : '..@';
             comment : '; ';
             comment : '; ';
@@ -1116,7 +1116,7 @@ interface
             idtxt  : 'NASMWDOSX';
             idtxt  : 'NASMWDOSX';
             asmbin : 'nasm';
             asmbin : 'nasm';
             asmcmd : '-f win32 -o $OBJ $ASM';
             asmcmd : '-f win32 -o $OBJ $ASM';
-            supported_target : system_i386_wdosx;
+            supported_targets : [system_i386_wdosx];
             flags : [af_allowdirect,af_needar,af_no_debug];
             flags : [af_allowdirect,af_needar,af_no_debug];
             labelprefix : '..@';
             labelprefix : '..@';
             comment : '; ';
             comment : '; ';
@@ -1129,7 +1129,7 @@ interface
             idtxt  : 'NASMELF';
             idtxt  : 'NASMELF';
             asmbin : 'nasm';
             asmbin : 'nasm';
             asmcmd : '-f elf -o $OBJ $ASM';
             asmcmd : '-f elf -o $OBJ $ASM';
-            supported_target : system_i386_linux;
+            supported_targets : [system_i386_linux];
             flags : [af_allowdirect,af_needar,af_no_debug];
             flags : [af_allowdirect,af_needar,af_no_debug];
             labelprefix : '..@';
             labelprefix : '..@';
             comment : '; ';
             comment : '; ';
@@ -1141,7 +1141,7 @@ interface
             idtxt  : 'NASMELF';
             idtxt  : 'NASMELF';
             asmbin : 'nasm';
             asmbin : 'nasm';
             asmcmd : '-f elf -o $OBJ $ASM';
             asmcmd : '-f elf -o $OBJ $ASM';
-            supported_target : system_i386_beos;
+            supported_targets : [system_i386_beos];
             flags : [af_allowdirect,af_needar,af_no_debug];
             flags : [af_allowdirect,af_needar,af_no_debug];
             labelprefix : '..@';
             labelprefix : '..@';
             comment : '; ';
             comment : '; ';
@@ -1153,7 +1153,7 @@ interface
             idtxt  : 'NASMELF';
             idtxt  : 'NASMELF';
             asmbin : 'nasm';
             asmbin : 'nasm';
             asmcmd : '-f elf -o $OBJ $ASM';
             asmcmd : '-f elf -o $OBJ $ASM';
-            supported_target : system_i386_haiku;
+            supported_targets : [system_i386_haiku];
             flags : [af_allowdirect,af_needar,af_no_debug];
             flags : [af_allowdirect,af_needar,af_no_debug];
             labelprefix : '..@';
             labelprefix : '..@';
             comment : '; ';
             comment : '; ';

+ 1 - 1
compiler/m68k/ag68kgas.pas

@@ -374,7 +374,7 @@ interface
             idtxt  : 'AS';
             idtxt  : 'AS';
             asmbin : 'as';
             asmbin : 'as';
             asmcmd : '-o $OBJ $ASM';
             asmcmd : '-o $OBJ $ASM';
-            supported_target : system_any;
+            supported_targets : [system_m68k_Amiga,system_m68k_Atari,system_m68k_Mac,system_m68k_linux,system_m68k_PalmOS,system_m68k_netbsd,system_m68k_openbsd,system_m68k_embedded];
             flags : [af_allowdirect,af_needar,af_smartlink_sections];
             flags : [af_allowdirect,af_needar,af_smartlink_sections];
             labelprefix : '.L';
             labelprefix : '.L';
             comment : '# ';
             comment : '# ';

+ 6 - 6
compiler/ogcoff.pas

@@ -2809,7 +2809,7 @@ const pemagic : array[0..3] of byte = (
             idtxt  : 'COFF';
             idtxt  : 'COFF';
             asmbin : '';
             asmbin : '';
             asmcmd : '';
             asmcmd : '';
-            supported_target : system_i386_go32v2;
+            supported_targets : [system_i386_go32v2];
             flags : [af_outputbinary];
             flags : [af_outputbinary];
             labelprefix : '.L';
             labelprefix : '.L';
             comment : '';
             comment : '';
@@ -2821,7 +2821,7 @@ const pemagic : array[0..3] of byte = (
             idtxt  : 'PECOFF';
             idtxt  : 'PECOFF';
             asmbin : '';
             asmbin : '';
             asmcmd : '';
             asmcmd : '';
-            supported_target : system_i386_win32;
+            supported_targets : [system_i386_win32];
             flags : [af_outputbinary,af_smartlink_sections];
             flags : [af_outputbinary,af_smartlink_sections];
             labelprefix : '.L';
             labelprefix : '.L';
             comment : '';
             comment : '';
@@ -2833,7 +2833,7 @@ const pemagic : array[0..3] of byte = (
             idtxt  : 'PEWDOSX';
             idtxt  : 'PEWDOSX';
             asmbin : '';
             asmbin : '';
             asmcmd : '';
             asmcmd : '';
-            supported_target : system_i386_wdosx;
+            supported_targets : [system_i386_wdosx];
             flags : [af_outputbinary];
             flags : [af_outputbinary];
             labelprefix : '.L';
             labelprefix : '.L';
             comment : '';
             comment : '';
@@ -2845,7 +2845,7 @@ const pemagic : array[0..3] of byte = (
             idtxt  : 'PECOFFWINCE';
             idtxt  : 'PECOFFWINCE';
             asmbin : '';
             asmbin : '';
             asmcmd : '';
             asmcmd : '';
-            supported_target : system_i386_wince;
+            supported_targets : [system_i386_wince];
             flags : [af_outputbinary,af_smartlink_sections];
             flags : [af_outputbinary,af_smartlink_sections];
             labelprefix : '.L';
             labelprefix : '.L';
             comment : '';
             comment : '';
@@ -2859,7 +2859,7 @@ const pemagic : array[0..3] of byte = (
             idtxt  : 'PECOFF';
             idtxt  : 'PECOFF';
             asmbin : '';
             asmbin : '';
             asmcmd : '';
             asmcmd : '';
-            supported_target : system_x86_64_win64;
+            supported_targets : [system_x86_64_win64];
             flags : [af_outputbinary,af_smartlink_sections];
             flags : [af_outputbinary,af_smartlink_sections];
             labelprefix : '.L';
             labelprefix : '.L';
             comment : '';
             comment : '';
@@ -2873,7 +2873,7 @@ const pemagic : array[0..3] of byte = (
             idtxt  : 'PECOFFWINCE';
             idtxt  : 'PECOFFWINCE';
             asmbin : '';
             asmbin : '';
             asmcmd : '';
             asmcmd : '';
-            supported_target : system_arm_wince;
+            supported_targets : [system_arm_wince];
             flags : [af_outputbinary];
             flags : [af_outputbinary];
             labelprefix : '.L';
             labelprefix : '.L';
             comment : '';
             comment : '';

+ 3 - 3
compiler/ogelf.pas

@@ -1127,7 +1127,7 @@ implementation
             idtxt  : 'ELF';
             idtxt  : 'ELF';
             asmbin : '';
             asmbin : '';
             asmcmd : '';
             asmcmd : '';
-            supported_target : system_any;  //target_i386_linux;
+            supported_targets : [system_i386_linux,system_i386_beos,system_i386_freebsd,system_i386_haiku,system_i386_Netware,system_i386_netwlibc];
             flags : [af_outputbinary,af_smartlink_sections,af_supports_dwarf];
             flags : [af_outputbinary,af_smartlink_sections,af_supports_dwarf];
             labelprefix : '.L';
             labelprefix : '.L';
             comment : '';
             comment : '';
@@ -1141,7 +1141,7 @@ implementation
             idtxt  : 'ELF';
             idtxt  : 'ELF';
             asmbin : '';
             asmbin : '';
             asmcmd : '';
             asmcmd : '';
-            supported_target : system_any;  //target_i386_linux;
+            supported_targets : [system_x86_64_linux];
             flags : [af_outputbinary,af_smartlink_sections,af_supports_dwarf];
             flags : [af_outputbinary,af_smartlink_sections,af_supports_dwarf];
             labelprefix : '.L';
             labelprefix : '.L';
             comment : '';
             comment : '';
@@ -1155,7 +1155,7 @@ implementation
             idtxt  : 'ELF';
             idtxt  : 'ELF';
             asmbin : '';
             asmbin : '';
             asmcmd : '';
             asmcmd : '';
-            supported_target : system_any;  //target_i386_linux;
+            supported_targets : [];
 //            flags : [af_outputbinary,af_smartlink_sections];
 //            flags : [af_outputbinary,af_smartlink_sections];
             flags : [af_outputbinary,af_supports_dwarf];
             flags : [af_outputbinary,af_supports_dwarf];
             labelprefix : '.L';
             labelprefix : '.L';

+ 1 - 1
compiler/powerpc/agppcmpw.pas

@@ -1259,7 +1259,7 @@ interface
             idtxt  : 'MPW';
             idtxt  : 'MPW';
             asmbin : 'PPCAsm';
             asmbin : 'PPCAsm';
             asmcmd : '-case on $ASM -o $OBJ';
             asmcmd : '-case on $ASM -o $OBJ';
-            supported_target : system_any; { what should I write here ?? }
+            supported_targets : [system_powerpc_macos];
             flags : [af_allowdirect,af_needar,af_smartlink_sections,af_labelprefix_only_inside_procedure];
             flags : [af_allowdirect,af_needar,af_smartlink_sections,af_labelprefix_only_inside_procedure];
             labelprefix : '@';
             labelprefix : '@';
             comment : '; ';
             comment : '; ';

+ 1 - 1
compiler/powerpc/agppcvasm.pas

@@ -395,7 +395,7 @@ unit agppcvasm;
          idtxt  : 'VASM';
          idtxt  : 'VASM';
          asmbin : 'fpcvasm';
          asmbin : 'fpcvasm';
          asmcmd: '-quiet -Felf -o $OBJ $ASM';
          asmcmd: '-quiet -Felf -o $OBJ $ASM';
-         supported_target : system_powerpc_morphos;
+         supported_targets : [system_powerpc_morphos];
          flags : [af_allowdirect,af_needar,af_smartlink_sections];
          flags : [af_allowdirect,af_needar,af_smartlink_sections];
          labelprefix : '.L';
          labelprefix : '.L';
          comment : '# ';
          comment : '# ';

+ 2 - 2
compiler/ppcgen/agppcgas.pas

@@ -429,7 +429,7 @@ unit agppcgas;
 {$else cpu64bitaddr}
 {$else cpu64bitaddr}
          asmcmd: '-o $OBJ $ASM';
          asmcmd: '-o $OBJ $ASM';
 {$endif cpu64bitaddr}
 {$endif cpu64bitaddr}
-         supported_target : system_any;
+         supported_targets : [system_powerpc_linux,system_powerpc_netbsd,system_powerpc_openbsd,system_powerpc_MorphOS,system_powerpc_Amiga,system_powerpc64_linux,system_powerpc_embedded,system_powerpc64_embedded];
          flags : [af_allowdirect,af_needar,af_smartlink_sections];
          flags : [af_allowdirect,af_needar,af_smartlink_sections];
          labelprefix : '.L';
          labelprefix : '.L';
          comment : '# ';
          comment : '# ';
@@ -443,7 +443,7 @@ unit agppcgas;
          idtxt  : 'AS-Darwin';
          idtxt  : 'AS-Darwin';
          asmbin : 'as';
          asmbin : 'as';
          asmcmd : '-o $OBJ $ASM -arch $ARCH';
          asmcmd : '-o $OBJ $ASM -arch $ARCH';
-         supported_target : system_any;
+         supported_targets : [system_powerpc_darwin,system_powerpc64_darwin];
          flags : [af_allowdirect,af_needar,af_smartlink_sections,af_supports_dwarf];
          flags : [af_allowdirect,af_needar,af_smartlink_sections,af_supports_dwarf];
          labelprefix : 'L';
          labelprefix : 'L';
          comment : '# ';
          comment : '# ';

+ 2 - 2
compiler/sparc/cpugas.pas

@@ -213,7 +213,7 @@ implementation
 {$else}
 {$else}
            asmcmd : '-Av9 -o $OBJ $ASM';
            asmcmd : '-Av9 -o $OBJ $ASM';
 {$endif}
 {$endif}
-           supported_target : system_any;
+           supported_targets : [system_sparc_solaris,system_sparc_linux,system_sparc_embedded];
            flags : [af_allowdirect,af_needar,af_smartlink_sections];
            flags : [af_allowdirect,af_needar,af_smartlink_sections];
            labelprefix : '.L';
            labelprefix : '.L';
            comment : '# ';
            comment : '# ';
@@ -225,7 +225,7 @@ implementation
            idtxt  : 'GAS';
            idtxt  : 'GAS';
            asmbin : 'gas';
            asmbin : 'gas';
            asmcmd : '-Av9 -o $OBJ $ASM';
            asmcmd : '-Av9 -o $OBJ $ASM';
-           supported_target : system_any;
+           supported_targets : [system_sparc_solaris,system_sparc_linux,system_sparc_embedded];
            flags : [af_allowdirect,af_needar,af_smartlink_sections];
            flags : [af_allowdirect,af_needar,af_smartlink_sections];
            labelprefix : '.L';
            labelprefix : '.L';
            comment : '# ';
            comment : '# ';

+ 3 - 3
compiler/systems.pas

@@ -265,7 +265,7 @@ interface
           idtxt       : string[12];
           idtxt       : string[12];
           asmbin      : string[8];
           asmbin      : string[8];
           asmcmd      : string[50];
           asmcmd      : string[50];
-          supported_target : tsystem;
+          supported_targets : set of tsystem;
           flags        : set of tasmflags;
           flags        : set of tasmflags;
           labelprefix : string[3];
           labelprefix : string[3];
           comment     : string[3];
           comment     : string[3];
@@ -552,8 +552,8 @@ function set_target_asm(t:tasm):boolean;
 begin
 begin
   set_target_asm:=false;
   set_target_asm:=false;
   if assigned(asminfos[t]) and
   if assigned(asminfos[t]) and
-    ((asminfos[t]^.supported_target=target_info.system) or
-     (asminfos[t]^.supported_target=system_any)) then
+    ((target_info.system in asminfos[t]^.supported_targets) or
+     (system_any in asminfos[t]^.supported_targets)) then
    begin
    begin
      target_asm:=asminfos[t]^;
      target_asm:=asminfos[t]^;
      set_target_asm:=true;
      set_target_asm:=true;

+ 10 - 6
compiler/x86/agx86att.pas

@@ -291,7 +291,7 @@ interface
             idtxt  : 'AS';
             idtxt  : 'AS';
             asmbin : 'as';
             asmbin : 'as';
             asmcmd : '--64 -o $OBJ $ASM';
             asmcmd : '--64 -o $OBJ $ASM';
-            supported_target : system_any;
+            supported_targets : [system_x86_64_linux,system_x86_64_freebsd,system_x86_64_win64,system_x86_64_embedded];
             flags : [af_allowdirect,af_needar,af_smartlink_sections,af_supports_dwarf];
             flags : [af_allowdirect,af_needar,af_smartlink_sections,af_supports_dwarf];
             labelprefix : '.L';
             labelprefix : '.L';
             comment : '# ';
             comment : '# ';
@@ -304,7 +304,7 @@ interface
             idtxt  : 'AS-Darwin';
             idtxt  : 'AS-Darwin';
             asmbin : 'as';
             asmbin : 'as';
             asmcmd : '-o $OBJ $ASM -arch x86_64';
             asmcmd : '-o $OBJ $ASM -arch x86_64';
-            supported_target : system_any;
+            supported_targets : [system_x86_64_darwin];
             flags : [af_allowdirect,af_needar,af_smartlink_sections,af_supports_dwarf];
             flags : [af_allowdirect,af_needar,af_smartlink_sections,af_supports_dwarf];
             labelprefix : 'L';
             labelprefix : 'L';
             comment : '# ';
             comment : '# ';
@@ -317,7 +317,9 @@ interface
             idtxt  : 'AS';
             idtxt  : 'AS';
             asmbin : 'as';
             asmbin : 'as';
             asmcmd : '--32 -o $OBJ $ASM';
             asmcmd : '--32 -o $OBJ $ASM';
-            supported_target : system_any;
+            supported_targets : [system_i386_GO32V2,system_i386_linux,system_i386_Win32,system_i386_freebsd,system_i386_solaris,system_i386_beos,
+                                system_i386_netbsd,system_i386_Netware,system_i386_qnx,system_i386_wdosx,system_i386_openbsd,
+                                system_i386_netwlibc,system_i386_wince,system_i386_embedded,system_i386_symbian,system_i386_haiku,system_x86_6432_linux];
             flags : [af_allowdirect,af_needar,af_smartlink_sections,af_supports_dwarf];
             flags : [af_allowdirect,af_needar,af_smartlink_sections,af_supports_dwarf];
             labelprefix : '.L';
             labelprefix : '.L';
             comment : '# ';
             comment : '# ';
@@ -330,7 +332,7 @@ interface
             idtxt  : 'AS_AOUT';
             idtxt  : 'AS_AOUT';
             asmbin : 'as';
             asmbin : 'as';
             asmcmd : '-o $OBJ $ASM';
             asmcmd : '-o $OBJ $ASM';
-            supported_target : system_any;
+            supported_targets : [system_i386_linux,system_i386_OS2,system_i386_freebsd,system_i386_netbsd,system_i386_openbsd,system_i386_EMX,system_i386_embedded];
             flags : [af_allowdirect,af_needar];
             flags : [af_allowdirect,af_needar];
             labelprefix : 'L';
             labelprefix : 'L';
             comment : '# ';
             comment : '# ';
@@ -343,7 +345,7 @@ interface
             idtxt  : 'AS-Darwin';
             idtxt  : 'AS-Darwin';
             asmbin : 'as';
             asmbin : 'as';
             asmcmd : '-o $OBJ $ASM -arch i386';
             asmcmd : '-o $OBJ $ASM -arch i386';
-            supported_target : system_any;
+            supported_targets : [system_i386_darwin];
             flags : [af_allowdirect,af_needar,af_smartlink_sections,af_supports_dwarf];
             flags : [af_allowdirect,af_needar,af_smartlink_sections,af_supports_dwarf];
             labelprefix : 'L';
             labelprefix : 'L';
             comment : '# ';
             comment : '# ';
@@ -355,7 +357,9 @@ interface
             idtxt  : 'GAS';
             idtxt  : 'GAS';
             asmbin : 'gas';
             asmbin : 'gas';
             asmcmd : '--32 -o $OBJ $ASM';
             asmcmd : '--32 -o $OBJ $ASM';
-            supported_target : system_any;
+            supported_targets : [system_i386_GO32V2,system_i386_linux,system_i386_Win32,system_i386_freebsd,system_i386_solaris,system_i386_beos,
+                                system_i386_netbsd,system_i386_Netware,system_i386_qnx,system_i386_wdosx,system_i386_openbsd,
+                                system_i386_netwlibc,system_i386_wince,system_i386_embedded,system_i386_symbian,system_i386_haiku,system_x86_6432_linux];
             flags : [af_allowdirect,af_needar,af_smartlink_sections,af_supports_dwarf];
             flags : [af_allowdirect,af_needar,af_smartlink_sections,af_supports_dwarf];
             labelprefix : '.L';
             labelprefix : '.L';
             comment : '# ';
             comment : '# ';

+ 4 - 4
compiler/x86/agx86int.pas

@@ -928,7 +928,7 @@ implementation
             idtxt  : 'TASM';
             idtxt  : 'TASM';
             asmbin : 'tasm';
             asmbin : 'tasm';
             asmcmd : '/m2 /ml $ASM $OBJ';
             asmcmd : '/m2 /ml $ASM $OBJ';
-            supported_target : system_any; { what should I write here ?? }
+            supported_targets : [system_i386_GO32V2,system_i386_Win32,system_i386_wdosx,system_i386_watcom,system_i386_wince];
             flags : [af_allowdirect,af_needar,af_labelprefix_only_inside_procedure];
             flags : [af_allowdirect,af_needar,af_labelprefix_only_inside_procedure];
             labelprefix : '@@';
             labelprefix : '@@';
             comment : '; ';
             comment : '; ';
@@ -940,7 +940,7 @@ implementation
             idtxt  : 'MASM';
             idtxt  : 'MASM';
             asmbin : 'masm';
             asmbin : 'masm';
             asmcmd : '/c /Cp $ASM /Fo$OBJ';
             asmcmd : '/c /Cp $ASM /Fo$OBJ';
-            supported_target : system_any; { what should I write here ?? }
+            supported_targets : [system_i386_GO32V2,system_i386_Win32,system_i386_wdosx,system_i386_watcom,system_i386_wince];
             flags : [af_allowdirect,af_needar];
             flags : [af_allowdirect,af_needar];
             labelprefix : '@@';
             labelprefix : '@@';
             comment : '; ';
             comment : '; ';
@@ -952,7 +952,7 @@ implementation
             idtxt  : 'WASM';
             idtxt  : 'WASM';
             asmbin : 'wasm';
             asmbin : 'wasm';
             asmcmd : '$ASM -6s -fp6 -ms -zq -Fo=$OBJ';
             asmcmd : '$ASM -6s -fp6 -ms -zq -Fo=$OBJ';
-            supported_target : system_any; { what should I write here ?? }
+            supported_targets : [system_i386_watcom];
             flags : [af_allowdirect,af_needar];
             flags : [af_allowdirect,af_needar];
             labelprefix : '@@';
             labelprefix : '@@';
             comment : '; ';
             comment : '; ';
@@ -965,7 +965,7 @@ implementation
             idtxt  : 'MASM';
             idtxt  : 'MASM';
             asmbin : 'ml64';
             asmbin : 'ml64';
             asmcmd : '/c /Cp $ASM /Fo$OBJ';
             asmcmd : '/c /Cp $ASM /Fo$OBJ';
-            supported_target : system_any; { what should I write here ?? }
+            supported_targets : [system_x86_64_win64];
             flags : [af_allowdirect,af_needar];
             flags : [af_allowdirect,af_needar];
             labelprefix : '@@';
             labelprefix : '@@';
             comment : '; ';
             comment : '; ';