File: default.gpr

package info (click to toggle)
wolfssl 5.8.4-1
  • links: PTS
  • area: main
  • in suites: forky, sid
  • size: 117,604 kB
  • sloc: ansic: 1,584,954; asm: 481,206; sh: 11,586; cs: 6,596; xml: 3,878; perl: 3,291; makefile: 2,058; ada: 1,891; javascript: 748; python: 636; cpp: 131; ruby: 118; objc: 80; tcl: 73
file content (92 lines) | stat: -rw-r--r-- 2,572 bytes parent folder | download | duplicates (5)
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
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
project Default is

   type OS_Kind is ("Windows", "Linux_Or_Mac");

   OS : OS_Kind := external ("OS", "Linux_Or_Mac");

   for Languages use ("C", "Ada");

   for Source_Dirs use (".",
                        "../../",
                        "../../src",
                        "../../wolfcrypt/src");

   --  Don't build the tls application examples because they make use
   --  of the Secondary Stack due to usage of the Ada.Command_Line
   --  package. All other Ada source code does not use the secondary stack.
   for Excluded_Source_Files use
     ("tls_client_main.adb",
      "tls_client.ads",
      "tls_client.adb",
      "tls_server_main.adb",
      "tls_server.ads",
      "tls_server.adb");

   for Object_Dir use "obj";

   package Naming is
      for Spec_Suffix ("C") use ".h";
   end Naming;

   package Builder is
      for Global_Configuration_Pragmas use "restricted.adc";
   end Builder;

   package Compiler is
      for Switches ("C") use
         ("-DWOLFSSL_USER_SETTINGS", --  Use the user_settings.h file.
          "-Wno-pragmas",
          "-Wall",
          "-Wextra",
          "-Wunknown-pragmas",
          "--param=ssp-buffer-size=1",
          "-Waddress",
          "-Warray-bounds",
          "-Wbad-function-cast",
          "-Wchar-subscripts",
          "-Wcomment",
          "-Wfloat-equal",
          "-Wformat-security",
          "-Wformat=2",
          "-Wmaybe-uninitialized",
          "-Wmissing-field-initializers",
          "-Wmissing-noreturn",
          "-Wmissing-prototypes",
          "-Wnested-externs",
          "-Wnormalized=id",
          "-Woverride-init",
          "-Wpointer-arith",
          "-Wpointer-sign",
          "-Wshadow",
          "-Wsign-compare",
          "-Wstrict-overflow=1",
          "-Wstrict-prototypes",
          "-Wswitch-enum",
          "-Wundef",
          "-Wunused",
          "-Wunused-result",
          "-Wunused-variable",
          "-Wwrite-strings",
          "-fwrapv");

      for Switches ("Ada") use ("-g");
   end Compiler;

   package Linker is
      case OS is
         when "Windows" =>
            for Switches ("Ada") use
               ("-lm",         --  To include the math library (used by WolfSSL).
                "-lcrypt32");  --  Needed on Windows.

         when "Linux_Or_Mac" =>
            for Switches ("Ada") use
               ("-lm");  --  To include the math library (used by WolfSSL).
      end case;
   end Linker;

   package Binder is
      for Switches ("Ada") use ("-Es");  --  To include stack traces.
   end Binder;

end Default;