瀏覽代碼

* correctly write OUTPUT_ARCH to the linker script, resolves issue #28395

git-svn-id: trunk@31236 -
florian 10 年之前
父節點
當前提交
4d3552943d
共有 1 個文件被更改,包括 24 次插入1 次删除
  1. 24 1
      compiler/systems/t_embed.pas

+ 24 - 1
compiler/systems/t_embed.pas

@@ -632,7 +632,30 @@ begin
       { linker script from ld 2.19 }
       { linker script from ld 2.19 }
       Add('ENTRY(_START)');
       Add('ENTRY(_START)');
       Add('OUTPUT_FORMAT("elf32-avr","elf32-avr","elf32-avr")');
       Add('OUTPUT_FORMAT("elf32-avr","elf32-avr","elf32-avr")');
-      Add('OUTPUT_ARCH(avr:2)');
+      case current_settings.cputype of
+       cpu_avr1:
+         Add('OUTPUT_ARCH(avr:1)');
+       cpu_avr2:
+         Add('OUTPUT_ARCH(avr:2)');
+       cpu_avr25:
+         Add('OUTPUT_ARCH(avr:25)');
+       cpu_avr3:
+         Add('OUTPUT_ARCH(avr:3)');
+       cpu_avr31:
+         Add('OUTPUT_ARCH(avr:31)');
+       cpu_avr35:
+         Add('OUTPUT_ARCH(avr:35)');
+       cpu_avr4:
+         Add('OUTPUT_ARCH(avr:4)');
+       cpu_avr5:
+         Add('OUTPUT_ARCH(avr:5)');
+       cpu_avr51:
+         Add('OUTPUT_ARCH(avr:51)');
+       cpu_avr6:
+         Add('OUTPUT_ARCH(avr:6)');
+       else
+         Internalerror(2015072701);
+      end;
       Add('MEMORY');
       Add('MEMORY');
       with embedded_controllers[current_settings.controllertype] do
       with embedded_controllers[current_settings.controllertype] do
         begin
         begin