mirror of
https://github.com/AdaCore/gsh.git
synced 2026-02-12 12:27:10 -08:00
82 lines
2.1 KiB
Plaintext
82 lines
2.1 KiB
Plaintext
with "os.gpr";
|
|
with "c.gpr";
|
|
with "gsh.gpr";
|
|
|
|
project Posix_Shell is
|
|
|
|
type Build_Type is ("dev", "prod");
|
|
type Boolean_Type is ("true", "false");
|
|
|
|
Build : Build_Type := external ("BUILD", "dev");
|
|
Build_Dir : Build_Type := Build;
|
|
OS := external("OS", "");
|
|
|
|
Default_Switches := ("-gnat12", "-gnatwcfijklmopruvz", "-gnaty");
|
|
Default_Libs := ();
|
|
|
|
case OS is
|
|
when "Windows_NT" =>
|
|
Default_Libs := ("-lntdll",
|
|
"-Wl,--stack=0x2000000");
|
|
when others =>
|
|
Default_Libs := ("-lreadline", "-lm", "-ldl");
|
|
end case;
|
|
|
|
Dev_Switches := ("-g", "-O0");
|
|
|
|
case Build is
|
|
when "dev" => Default_Switches := Default_Switches &
|
|
("-fpreserve-control-flow", "-fdump-scos");
|
|
when "prod" => null;
|
|
end case;
|
|
|
|
for Main use ("strmatch.adb", "gsh_lexer.adb", "gsh.adb", "builtin.adb", "gsh_dump_tree.adb");
|
|
|
|
case OS is
|
|
when "Windows_NT" =>
|
|
for Source_Dirs use ("mains");
|
|
when others =>
|
|
for Source_Dirs use ("mains");
|
|
end case;
|
|
|
|
for Languages use ("Ada");
|
|
|
|
for Object_Dir use "obj/" & Build_Dir;
|
|
|
|
package Linker is
|
|
case Build is
|
|
when "prod" => for Default_Switches ("ada") use Default_Libs;
|
|
when "dev" => for Default_Switches ("ada") use Default_Libs;
|
|
end case;
|
|
end Linker;
|
|
|
|
package Binder is
|
|
case Build is
|
|
when "prod" => for Default_Switches ("ada") use ();
|
|
when "dev" => for Default_Switches ("ada") use ("-E");
|
|
end case;
|
|
end Binder;
|
|
|
|
package Builder is
|
|
case Build is
|
|
when "prod" =>
|
|
for Default_Switches ("ada") use ();
|
|
when "dev" =>
|
|
for Default_Switches ("ada") use ("-g");
|
|
|
|
end case;
|
|
end Builder;
|
|
|
|
package Compiler is
|
|
case Build is
|
|
when "prod" =>
|
|
for Default_Switches ("ada") use ("-O2", "-gnatpn") &
|
|
Default_Switches;
|
|
when "dev" =>
|
|
for Default_Switches ("ada") use ("-gnata", "-gnatwe") & Dev_Switches &
|
|
Default_Switches;
|
|
end case;
|
|
end Compiler;
|
|
|
|
end Posix_Shell;
|