File tree 3 files changed +72
-2
lines changed
3 files changed +72
-2
lines changed Original file line number Diff line number Diff line change @@ -366,6 +366,21 @@ build_full_leon3()
366
366
do_ravenscar leon3-elf ravenscar-full/leon3 --cross-dir=$CROSS_DIR
367
367
}
368
368
369
+ build_zfp_leon4 ()
370
+ {
371
+ do_zfp leon3-elf zfp/leon4 --cross-dir=$CROSS_DIR
372
+ }
373
+
374
+ build_sfp_leon4 ()
375
+ {
376
+ do_ravenscar leon3-elf ravenscar-sfp/leon4 --cross-dir=$CROSS_DIR
377
+ }
378
+
379
+ build_full_leon4 ()
380
+ {
381
+ do_ravenscar leon3-elf ravenscar-full/leon4 --cross-dir=$CROSS_DIR
382
+ }
383
+
369
384
build_zfp_x86_linux ()
370
385
{
371
386
do_zfp x86-linux zfp/x86-linux
@@ -636,6 +651,14 @@ else
636
651
* ) echo " Unknown command $opt for target $target " ; exit 2;;
637
652
esac
638
653
;;
654
+ leon4)
655
+ case $opt in
656
+ zfp) build_zfp_leon4 ;;
657
+ sfp) build_sfp_leon4 ;;
658
+ full) build_full_leon4 ;;
659
+ * ) echo " Unknown command $opt for target $target " ; exit 2;;
660
+ esac
661
+ ;;
639
662
640
663
# Misc
641
664
x86-linux)
Original file line number Diff line number Diff line change @@ -359,7 +359,7 @@ case $config in
359
359
* xtratum/leon3)
360
360
gnat_target=erc32-elf
361
361
;;
362
- * /leon3)
362
+ * /leon3 | * /leon4 )
363
363
gnat_target=leon3-elf
364
364
;;
365
365
* /mcm)
@@ -1154,12 +1154,15 @@ case $config in
1154
1154
" zfp/erc32" \
1155
1155
| " zfp/leon" \
1156
1156
| " zfp/leon3" \
1157
+ | " zfp/leon4" \
1157
1158
| " ravenscar-sfp/erc32" \
1158
1159
| " ravenscar-sfp/leon" \
1159
1160
| " ravenscar-sfp/leon3" \
1161
+ | " ravenscar-sfp/leon4" \
1160
1162
| " ravenscar-full/erc32" \
1161
1163
| " ravenscar-full/leon" \
1162
- | " ravenscar-full/leon3" )
1164
+ | " ravenscar-full/leon3" \
1165
+ | " ravenscar-full/leon4" )
1163
1166
extra_gnat_files=" $extra_gnat_files
1164
1167
$textio_src s-macres.ads s-macres.adb" ;
1165
1168
extra_target_pairs=" $extra_target_pairs
@@ -1201,6 +1204,14 @@ case $config in
1201
1204
arch_files=" $crossdir /leon3-elf/leon.ld
1202
1205
$crossdir /leon-elf/crt0.S"
1203
1206
;;
1207
+ * /leon4)
1208
+ # Like leon3 except for bbbopa.
1209
+ extra_target_pairs=" $extra_target_pairs
1210
+ s-bbbopa.ads:s-bbbopa-leon4.ads
1211
+ s-textio.adb:s-textio-leon3.adb"
1212
+ arch_files=" $crossdir /leon3-elf/leon.ld
1213
+ $crossdir /leon-elf/crt0.S"
1214
+ ;;
1204
1215
* /erc32)
1205
1216
extra_target_pairs=" $extra_target_pairs
1206
1217
s-textio.adb:s-textio-erc32.adb"
Original file line number Diff line number Diff line change
1
+ <?xml version =" 1.0" ?>
2
+
3
+ <gprconfig >
4
+ <configuration >
5
+ <config >
6
+ package Compiler is
7
+ Common_Required_Switches := ();
8
+
9
+ for Leading_Required_Switches ("Ada") use
10
+ Compiler'Leading_Required_Switches ("Ada") &
11
+ Common_Required_Switches;
12
+
13
+ for Leading_Required_Switches ("C") use
14
+ Compiler'Leading_Required_Switches ("C") &
15
+ ("-DLEON", "-DLEON3") &
16
+ Common_Required_Switches;
17
+
18
+ for Leading_Required_Switches ("Asm_Cpp") use
19
+ Compiler'Leading_Required_Switches ("Asm_Cpp") &
20
+ ("-DLEON", "-DLEON3") &
21
+ Common_Required_Switches;
22
+ end Compiler;
23
+
24
+ LDSCRIPT := external ("LDSCRIPT", "${RUNTIME_DIR(ada)}/arch/leon.ld");
25
+ -- Linker script to use
26
+
27
+ package Linker is
28
+ for Required_Switches use Linker'Required_Switches &
29
+ ("-L${RUNTIME_DIR(ada)}/adalib",
30
+ "-nostartfiles",
31
+ "-T" & LDSCRIPT, "-Wl,-u_start") &
32
+ Compiler.Common_Required_Switches;
33
+ end Linker;
34
+ </config >
35
+ </configuration >
36
+ </gprconfig >
You can’t perform that action at this time.
0 commit comments