project CheddarLite is for Languages use ("Ada"); for Main use ("cheddarlite.adb"); type Build_Type is ("Release", "Debug"); Build : Build_Type := external ("Build", "Debug"); case Build is when "Release" => for Source_Dirs use (".", "binaries", "config", "framework", "framework/parametric", "framework/queueing_system", "framework/random", "framework/design_pattern_analyzer", "framework/arinc653", "framework/cache_system", "framework/transformation", "framework/architecture_generator", "framework_examples", "graphical_editor", "reusable", "tools", "txt", "../required_packages/bigNumber", "../required_packages/xmlada", "../required_packages/ocarina/aadl", "../required_packages/ocarina/core", "../required_packages/ocarina/config", "../required_packages/ocarina/dia", "../required_packages/ocarina/dumper", "../required_packages/ocarina/generators", "../required_packages/ocarina/pn", "../required_packages/ocarina/gaia"); for Exec_Dir use "binaries/bin/release"; for Object_Dir use "binaries/objects/release"; when "Debug" => for Source_Dirs use (".", "binaries", "config", "framework", "framework/parametric", "framework/queueing_system", "framework/random", "framework/design_pattern_analyzer", "framework/arinc653", "framework/cache_system", "framework/transformation", "framework/architecture_generator", "framework_examples", "graphical_editor", "reusable", "tools", "txt", "../required_packages/bigNumber", "../required_packages/xmlada", "../required_packages/ocarina/aadl", "../required_packages/ocarina/core", "../required_packages/ocarina/config", "../required_packages/ocarina/dia", "../required_packages/ocarina/dumper", "../required_packages/ocarina/generators", "../required_packages/ocarina/pn", "../required_packages/ocarina/gaia"); for Exec_Dir use "binaries/bin/debug"; for Object_Dir use "binaries/objects/debug"; end case; package Linker is for Linker_Options use (); case Build is when "Release" => for Default_Switches ("ada") use ("-lgcc_s"); when "Debug" => for Default_Switches ("ada") use ("-g", "-L../required_packages/ocarina/lib", "-locarina", "-locarina-aadl", "-locarina-checker", "-locarina-config", "-locarina-dumper", "-locarina-gaia", "-locarina-generators", "-locarina-pn", "-lgcc_eh"); end case; end Linker; package Compiler is case Build is when "Release" => for Default_Switches ("ada") use ("-O3", "-gnatn", "-funroll-loops", "-gnatf", "-gnato", "-fstack-check", "-gnata"); when "Debug" => for Default_Switches ("ada") use ("-gnatf", "-gnato", "-fstack-check", "-g", "-gnata"); end case; end Compiler; package Builder is case Build is when "Release" => for Default_Switches ("ada") use ("-s", "-m"); when "Debug" => for Default_Switches ("ada") use ("-s", "-m", "-k", "-g"); end case; end Builder; package Ide is end Ide; package Naming is for Spec_Suffix ("makefile") use "Makefile"; for Spec_Suffix ("xml") use ".xml"; end Naming; package Binder is case Build is when "Release" => when "Debug" => for Default_Switches ("ada") use ("-static"); end case; end Binder; end CheddarLite;