summaryrefslogtreecommitdiff
path: root/gprconfig/compilers.xml.in
blob: 23a550bcdc58266a4aba69e6e8a35ed992f3af67 (plain)
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
<?xml version="1.0" ?>
<gprconfig>
  <compiler_description>
    <name>GCC</name>
    <executable prefix="1">(.*)?gcc(-\d+)?</executable>
    <version>
      <external>$EXEC -v</external>
      <grep regexp="^gcc \S+ (\S+)" group="1"></grep>
    </version>
    <languages>C</languages>
    <target>
      <external>$EXEC -dumpmachine</external>
      <grep regexp="[^\r\n]+"></grep>
    </target>
  </compiler_description>

  <compiler_description>
    <name>CLANG</name>
    <executable prefix="1">((.*)?)clang</executable>
    <version>
      <external>$EXEC -v</external>
      <grep regexp=".*(LLVM|clang) version ([0-9.]*)" group="2"></grep>
    </version>
    <languages>C</languages>
    <target>
      <external>$EXEC -dumpmachine</external>
      <grep regexp="[^\r\n]+"></grep>
    </target>
  </compiler_description>

  <compiler_description>
    <name>GCC-ASM</name>
    <executable prefix="1">(.*)?gcc(-\d+)?</executable>
    <version>
      <external>$EXEC -v</external>
      <grep regexp="^gcc \S+ (\S+)" group="1"></grep>
    </version>
    <languages>Asm,Asm_Cpp,Asm2</languages>
    <target>
      <external>$EXEC -dumpmachine</external>
      <grep regexp="[^\r\n]+"></grep>
    </target>
  </compiler_description>

  <compiler_description>
    <name>CLANG-ASM</name>
    <executable prefix="1">((.*)?)clang</executable>
    <version>
      <external>$EXEC -v</external>
      <grep regexp=".*(LLVM|clang) version ([0-9.]*)" group="2"></grep>
    </version>
    <languages>Asm,Asm_Cpp,Asm2</languages>
    <target>
      <external>$EXEC -dumpmachine</external>
      <grep regexp="[^\r\n]+"></grep>
    </target>
  </compiler_description>

  <compiler_description>
    <name>GNAT</name>
    <executable prefix="1">(.*)?gnatls</executable>
    <version>
      <external>${PREFIX}gnatls -v --version</external>
      <grep regexp="^GNATLS.+?(\d+(\.\d+)?)" group="1"></grep>
    </version>
    <languages>Ada</languages>
    <variable name="gcc_version">
      <external>${PREFIX}gcc -v</external>
      <grep regexp="^[-\w]*gcc \S+ (\S+)" group="1"></grep>
    </variable>
    <variable name="gcc_version_major">
      <external>${PREFIX}gcc -v</external>
      <grep regexp="^[-\w]*gcc \S+ (\d+)\.\d+\.\d+" group="1"></grep>
    </variable>
    <target>
      <external>${PREFIX}gcc -dumpmachine</external>
      <grep regexp="[^\r\n]+"></grep>
    </target>
  </compiler_description>
</gprconfig>