diff options
author | Jedidiah Barber <contact@jedbarber.id.au> | 2021-11-07 16:24:46 +1300 |
---|---|---|
committer | Jedidiah Barber <contact@jedbarber.id.au> | 2021-11-07 16:24:46 +1300 |
commit | 769df4d637d0993e9f765097cabfd84b8bba794a (patch) | |
tree | 204b1b6ad63f7131545f324e36bfb38536673b83 | |
parent | 876d3c9c05563993438c6c58ddeff1ad97c3106b (diff) |
Temporary ZipAda gpr file
-rw-r--r-- | zipada/zipada_lib.gpr | 90 |
1 files changed, 90 insertions, 0 deletions
diff --git a/zipada/zipada_lib.gpr b/zipada/zipada_lib.gpr new file mode 100644 index 0000000..ba48341 --- /dev/null +++ b/zipada/zipada_lib.gpr @@ -0,0 +1,90 @@ +-- This is a GNAT, GCC or GNAT Studio project file +-- for the Zip-Ada library project: +-- +-- home page: http://unzip-ada.sf.net/ +-- project page: http://sf.net/projects/unzip-ada/ +-- mirror: https://github.com/zertovitch/zip-ada +-- +-- Build me with "gprbuild -P zipada_lib", or "gnatmake -P zipada_lib", +-- or open me with GNAT Studio. +-- +-- Important: +-- For building tests, see the zipada_test.gpr project file. +-- For building standalone tools, see the zipada.gpr project file. +-- +library project ZipAda_Lib is + + for Source_Dirs use ("zip_lib"); + for Object_Dir use "obj_lib"; + for Create_Missing_Dirs use "True"; -- Flips by default the "-p" switch + + for Library_Dir use "lib"; + for Library_Name use "zipada"; + + type Library_Type is + ("static", + "dynamic", + "relocatable" + ); + + Library_Mode : Library_Type := external ("Library_Mode", "dynamic"); + for Library_Kind use Library_Mode; + + Common_Options := ( + "-gnatwa", -- Warnings switches (a:turn on all info/warnings marked with +) + "-gnatwh", -- Warnings switches (h:turn on warnings for hiding declarations) + "-gnatwcijkmopruvz.c.n.p.t.w.x", -- Warnings switches (run "gnatmake" for full list) + "-gnatf", -- Full errors. Verbose details, all undefined references + "-gnatq", -- Don't quit, try semantics, even if parse errors + "-gnatQ", -- Don't quit, write ali/tree file even if compile errors + "-g" + ); + + Fast_Options_Inlining_Neutral := + Common_Options & ( + "-O2", "-gnatp", + "-funroll-loops", "-fpeel-loops", "-funswitch-loops", + "-ftracer", "-fweb", "-frename-registers", + "-fpredictive-commoning", "-fgcse-after-reload", + "-ftree-vectorize", "-fipa-cp-clone", + "-ffunction-sections" + ); + + Fast_Options := + Fast_Options_Inlining_Neutral & ( + "-gnatn" -- Cross-unit inlining + ); + + type Zip_OS_Kind is + ("Win32", "Win64", "Linux", "MacOSX", "Any"); + + Zip_OS : Zip_OS_Kind := external ("Zip_OS", "Any"); + + package Compiler is + for Local_Configuration_Pragmas use project'Project_Dir & "za_elim.pra"; + case Zip_OS is + when "Win32" | "Win64" => + for Default_Switches ("ada") use + Fast_Options & ("-mfpmath=sse", "-msse3"); + when others => + for Default_Switches ("ada") use Fast_Options; + end case; + end Compiler; + + package Binder is + -- -Es: Store tracebacks in exception occurrences, and enable symbolic tracebacks + for Default_Switches ("ada") use ("-Es"); + end Binder; + + package Builder is + -- "If -j0 is used, then the maximum number of simultaneous compilation + -- jobs is the number of core processors on the platform." + for Default_Switches ("ada") use ("-j0"); + end Builder; + + package Ide is + for Default_Switches ("adacontrol") use ("-f", "tools/verif.aru", "-r"); + for Vcs_Kind use "Subversion"; + end Ide; + +end ZipAda_Lib; |