Ada_Drivers_Library/examples/shared/common/common.gpr

58 lines
1.7 KiB
Plaintext

with "../../../boards/config";
project Common is
type LOADER_Type is
("RAM", "ROM");
LOADER : LOADER_Type := external ("LOADER", "ROM");
type RTS_Type is ("ravenscar-sfp", "ravenscar-full");
RTS : RTS_Type := External ("RTS_Profile", "ravenscar-sfp");
type LCH_Type is ("led", "lcd");
LCH : LCH_Type := external ("LCH", "led");
for Languages use ("Ada");
for Target use "arm-eabi";
for Source_Dirs use ("gui");
case RTS is
when "ravenscar-sfp" =>
for Source_Dirs use Project'Source_Dirs & ("lch_sfp");
case LCH is
when "led" =>
for Source_Dirs use Project'Source_Dirs & ("lch_sfp/led");
when "lcd" =>
for Source_Dirs use Project'Source_Dirs & ("lch_sfp/lcd");
end case;
when "ravenscar-full" =>
for Source_Dirs use Project'Source_Dirs & ("lch_full");
case LCH is
when "led" =>
for Source_Dirs use Project'Source_Dirs & ("lch_full/led");
when "lcd" =>
for Source_Dirs use Project'Source_Dirs & ("lch_full/lcd");
end case;
end case;
package Compiler renames Config.Compiler;
package Builder renames Config.Builder;
package Linker is
for Default_Switches ("Ada") use
("-Wl,--defsym=__stack_size=32768",
"-Wl,--gc-sections",
"-Wl,--print-memory-usage");
end Linker;
package Ide is
for Gnat use "arm-eabi-gnat";
for Gnatlist use "arm-eabi-gnatls";
for Debugger_Command use "arm-eabi-gdb";
for Program_Host use "localhost:4242";
for Communication_Protocol use "remote";
for Connection_Tool use "st-util";
end Ide;
end Common;