-
Notifications
You must be signed in to change notification settings - Fork 2
/
lib_florist.gpr
49 lines (39 loc) · 1.48 KB
/
lib_florist.gpr
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
with "config/florist_blady_config.gpr";
project Lib_Florist is
So_Ext := "";
case Florist_Blady_Config.Alire_Host_OS is
when "macos" =>
So_Ext := ".dylib";
when others =>
So_Ext := ".so";
end case;
for Library_Name use "florist";
for Languages use ("C", "Ada");
for Library_Version use "lib" & Project'Library_Name & So_Ext & "." & Florist_Blady_Config.Crate_Version;
type Boolean is ("False", "True");
Threads : Boolean := external ("THREADS", "True");
Common_Source_Dirs := ("libsrc", "gensrc", "confsrc");
Threads_Source_Dirs := ("libsrc/threads", "gensrc/threads");
case Threads is
when "False" =>
for Source_Dirs use Common_Source_Dirs;
when "True" =>
for Source_Dirs use Common_Source_Dirs & Threads_Source_Dirs;
end case;
for Object_Dir use "obj/" & Florist_Blady_Config.Build_Profile;
for Create_Missing_Dirs use "True";
for Library_Dir use "lib";
type Library_Type_Type is ("relocatable", "static", "static-pic");
Library_Type : Library_Type_Type :=
external ("FLORIST_LIBRARY_TYPE", external ("LIBRARY_TYPE", "static"));
for Library_Kind use Library_Type;
package Compiler is
for Default_Switches ("Ada") use Florist_Blady_Config.Ada_Compiler_Switches;
end Compiler;
package Binder is
for Switches ("Ada") use ("-Es"); -- Symbolic traceback
end Binder;
package Install is
for Artifacts (".") use ("share");
end Install;
end Lib_Florist;