raw
ffa_ch1_genesis         1 ------------------------------------------------------------------------------
ffa_ch1_genesis 2 ------------------------------------------------------------------------------
ffa_ch1_genesis 3 -- This file is part of 'Finite Field Arithmetic', aka 'FFA'. --
ffa_ch1_genesis 4 -- --
ffa_ch1_genesis 5 -- (C) 2017 Stanislav Datskovskiy ( www.loper-os.org ) --
ffa_ch1_genesis 6 -- http://wot.deedbot.org/17215D118B7239507FAFED98B98228A001ABFFC7.html --
ffa_ch1_genesis 7 -- --
ffa_ch1_genesis 8 -- You do not have, nor can you ever acquire the right to use, copy or --
ffa_ch1_genesis 9 -- distribute this software ; Should you use this software for any purpose, --
ffa_ch1_genesis 10 -- or copy and distribute it to anyone or in any manner, you are breaking --
ffa_ch1_genesis 11 -- the laws of whatever soi-disant jurisdiction, and you promise to --
ffa_ch1_genesis 12 -- continue doing so for the indefinite future. In any case, please --
ffa_ch1_genesis 13 -- always : read and understand any software ; verify any PGP signatures --
ffa_ch1_genesis 14 -- that you use - for any purpose. --
ffa_ch1_genesis 15 -- --
ffa_ch1_genesis 16 -- See also http://trilema.com/2015/a-new-software-licensing-paradigm . --
ffa_ch1_genesis 17 ------------------------------------------------------------------------------
ffa_ch1_genesis 18 ------------------------------------------------------------------------------
ffa_ch1_genesis 19
ffa_ch1_genesis 20 project FFA is
ffa_ch1_genesis 21
ffa_ch1_genesis 22 for Object_Dir use "obj";
ffa_ch1_genesis 23
ffa_ch1_genesis 24 type Mode_Type is ("debug", "release");
ffa_ch1_genesis 25 Mode : Mode_Type := external ("mode", "release");
ffa_ch1_genesis 26
ffa_ch1_genesis 27 for Languages use ("Ada");
ffa_ch1_genesis 28 for Source_Dirs use (".");
ffa_ch1_genesis 29 for Library_Dir use "lib";
ffa_ch1_genesis 30 for Library_Name use "FFA";
ffa_ch1_genesis 31 for Library_Kind use "static";
ffa_ch1_genesis 32
ffa_ch1_genesis 33 package Binder is
ffa_ch1_genesis 34 case Mode is
ffa_ch1_genesis 35 when "debug" =>
ffa_ch1_genesis 36 for Switches ("Ada")
ffa_ch1_genesis 37 use ();
ffa_ch1_genesis 38 when "release" =>
ffa_ch1_genesis 39 for Switches ("Ada")
ffa_ch1_genesis 40 use ("-static", "-r");
ffa_ch1_genesis 41 end case;
ffa_ch1_genesis 42 end Binder;
ffa_ch1_genesis 43
ffa_ch1_genesis 44 package Builder is
ffa_ch1_genesis 45 for Switches ("Ada")
ffa_ch1_genesis 46 use ("-nostdlib");
ffa_ch1_genesis 47 end Builder;
ffa_ch1_genesis 48
ffa_ch1_genesis 49 package Compiler is
ffa_ch1_genesis 50 case Mode is
ffa_ch1_genesis 51 when "debug" =>
ffa_ch1_genesis 52 for Switches ("Ada")
ffa_ch1_genesis 53 use ("-g");
ffa_ch1_genesis 54 when "release" =>
ffa_ch1_genesis 55 for Switches ("Ada")
ffa_ch1_genesis 56 use ("-O2", "-fdump-scos", "-gnata", "-fstack-check",
ffa_ch1_genesis 57 "-fdata-sections", "-ffunction-sections",
ffa_ch1_genesis 58 "-gnatec=" & FFA'Project_Dir & "restrict.adc");
ffa_ch1_genesis 59 end case;
ffa_ch1_genesis 60 end Compiler;
ffa_ch1_genesis 61
ffa_ch1_genesis 62 end FFA;