File: vms_gprbuild.gpr

package info (click to toggle)
gprbuild 2011-2
  • links: PTS, VCS
  • area: main
  • in suites: wheezy
  • size: 10,396 kB
  • sloc: ada: 94,726; sh: 2,818; xml: 2,225; makefile: 471; ansic: 240; cpp: 89; fortran: 62; asm: 27
file content (104 lines) | stat: -rw-r--r-- 3,168 bytes parent folder | download | duplicates (2)
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
93
94
95
96
97
98
99
100
101
102
103
104
project VMS_Gprbuild is
   type OS_Type is ("avms", "ivms");
   OS : OS_Type := external ("OS", "ivms");

   type Build_Type is ("debug", "production", "coverage", "profiling");
   Bld : Build_Type := external ("BUILD", "debug");

   type VCS_Type is ("Subversion", "Git", "auto");
   VCS_Kind : VCS_Type := external ("PRJ_VCS", "Subversion");

   for Main use
       ("gprbuild.adb",
        "gprbind.adb",
        "gprlib.adb",
        "gprclean.adb",
        "ccomp.adb",
        "forcomp.adb");

   for Source_Dirs use ("src", "gnat");

   case Bld is
      when "production" => for Object_Dir use "obj";
      when "coverage"   => for Object_Dir use "obj-cov";
      when "profiling"  => for Object_Dir use "obj-prof";
      when "debug"      => for Object_Dir use "obj-debug";
   end case;

   for Exec_Dir use ".";

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

   package Compiler is
      common_switches := ("-gnat05", "-gnaty", "-gnatQ");
      case Bld is
         when "debug" =>
            for Default_Switches ("Ada") use common_switches &
            ("-g", "-gnata", "-gnatVa", "-gnatwaCJI"
--             , "-gnatwe"
             , "-gnatyg"
             );

            for Local_Configuration_Pragmas use "debug.adc";
         when "coverage" =>
            for Default_Switches ("Ada") use common_switches &
              ("-ftest-coverage", "-fprofile-arcs");
         when "profiling" =>
            for Default_Switches ("Ada") use common_switches &
              ("-pg", "-g");
         when "production" =>
            for Default_Switches ("Ada") use common_switches &
              ("-O2", "-gnatpn", "-gnatws");
      end case;
   end Compiler;

   package Binder is
      common_switches := ("-E", "-static");
      case Bld is
         when "debug" =>
            for Default_Switches ("Ada") use common_switches;

         when "coverage" | "profiling" | "production" =>
            for Default_Switches ("Ada") use common_switches;
         end case;
   end Binder;

   package Linker is
      Common_Switches_VMS :=
        (project'Object_Dir & "/gprbuild_dummies.obj",
         project'Object_Dir & "/link.obj");

      case Bld is
         when "production" | "debug" | "coverage" =>
            for Default_Switches ("Ada") use Common_Switches_VMS;

         when "profiling"            =>
            for Default_Switches ("Ada")
              use Common_Switches_VMS & ("-pg", "-g");

      end case;
   end Linker;

   Common_Excluded_Source_Files :=
      ("gprlib-build_shared_lib.adb",
       "gprlib-build_shared_lib-nosymbols.adb",
       "gprlib-build_shared_lib-vms.adb",
       "mlib-tgt-vms-alpha.adb",
       "mlib-tgt-vms-ia64.adb");

   package Naming is
      for Body ("gprlib.build_shared_lib")
        use "gprlib-build_shared_lib-vms.adb";
      for Body ("gpr_util.knowledge") use "gpr_util-knowledge-vms.adb";

      case OS is
         when "avms" =>
            for Body ("mlib.tgt.specific")
              use "mlib-tgt-specific-vms-alpha.adb";
         when "ivms" =>
            for Body ("mlib.tgt.specific")
              use "mlib-tgt-specific-vms-ia64.adb";
      end case;
   end Naming;

end VMS_Gprbuild;