aboutsummaryrefslogtreecommitdiff
path: root/www/aws/files/aws.gpr.in
blob: c24fdcbd69a7c015bc106a4ff75dab991a2f6ac7 (plain) (blame)
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
50
51
52
53
54
55
56
57
58
59
with "xmlada";

project AWS is

   type AWS_Kind_Type is ("static", "relocatable");
   AWS_Kind : AWS_Kind_Type := external ("LIBRARY_TYPE", "static");

   for Library_Name use "aws";
   for Library_Kind use AWS_Kind;
   case AWS_Kind is
      when "relocatable" =>
         for Source_Dirs use ("../../include/aws.relocatable");
         for Library_Dir use "../../lib/aws.relocatable";
         for Library_Version use "libaws.so";
      when others =>
         for Source_Dirs use ("../../include/aws");
         for Library_Dir use "../../lib/aws";
   end case;
   for Externally_Built use "true";

   package Linker is
      for Linker_Options use ("-L@PREFIX@/lib", "-Wl,-R,@PREFIX@/lib"
         @SSL@  , "-lssl", "-lcrypto"
         @TLS@  , "-L@PREFIX@/lib/gnutls3", "-Wl,-R,@PREFIX@/lib/gnutls3"
         @TLS@  , "-lgnutls"
         @LDP@  , "-lldap"
      );
   end Linker;

   package Naming is

      @IP4@  for Implementation ("AWS.Net.Std") use "aws-net-std__gnat.adb";

      @IP6@  for Implementation ("AWS.Net.Std") use "aws-net-std__ipv6.adb";

      @STD@  for Implementation ("AWS.Net.SSL") use "aws-net-ssl__dummy.adb";
      @STD@  for Specification ("AWS.Net.SSL.Certificate.Impl")
      @STD@    use "aws-net-ssl-certificate-impl__dummy.ads";
      @STD@  for Implementation ("AWS.Net.SSL.Certificate.Impl")
      @STD@    use "aws-net-ssl-certificate-impl__dummy.adb";
      @STD@  for Specification ("SSL.Thin") use "ssl-thin__dummy.ads";

      @SSL@  for Implementation ("AWS.Net.SSL") use "aws-net-ssl__openssl.adb";
      @SSL@  for Specification ("AWS.Net.SSL.Certificate.Impl")
      @SSL@    use "aws-net-ssl-certificate-impl__openssl.ads";
      @SSL@  for Implementation ("AWS.Net.SSL.Certificate.Impl")
      @SSL@    use "aws-net-ssl-certificate-impl__openssl.adb";
      @SSL@  for Specification ("SSL.Thin") use "ssl-thin__openssl.ads";

      @TLS@  for Implementation ("AWS.Net.SSL") use "aws-net-ssl__gnutls.adb";
      @TLS@  for Specification ("AWS.Net.SSL.Certificate.Impl")
      @TLS@    use "aws-net-ssl-certificate-impl__gnutls.ads";
      @TLS@  for Implementation ("AWS.Net.SSL.Certificate.Impl")
      @TLS@    use "aws-net-ssl-certificate-impl__gnutls.adb";
      @TLS@  for Specification ("SSL.Thin") use "ssl-thin__gnutls.ads";

   end Naming;

end AWS;