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
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
|
--- a/db/compilers.xml 2019-06-01 21:29:57.611722804 +0200
+++ b/db/compilers.xml 2019-06-01 21:42:56.000608601 +0200
@@ -20,7 +20,7 @@
<!-- GCC 3.x & 4.x (not for GNAT Pro)-->
<compiler_description>
<name>GCC</name>
- <executable prefix="1">(.*-wrs-.*|.*-sysgo.*|.*-elf-.*|.*-eabi-.*|.*-eabispe-.*|avr-.*|.*-elinos-linux.*|.*-linux-gnu-|.*mingw32.*|.*-xcoff-.*|arm-linux-androideabi-|arm-linux-gnueabi-|arm-linux-gnueabihf-|e500v2-gnu-linux-|powerpc-.*-linux.*-|.*-darwin.*-)?gcc(-\d+)?</executable>
+ <executable prefix="1">(.*-wrs-.*|.*-sysgo.*|.*-elf-.*|.*-eabi-.*|.*-eabispe-.*|avr-.*|.*-elinos-linux.*|.*-linux-gnu-|.*mingw32.*|.*-xcoff-.*|arm-linux-androideabi-|arm-linux-gnueabi-|arm-linux-gnueabihf-|e500v2-gnu-linux-|powerpc-.*-linux.*-|.*-darwin.*-)?gcc-@VER@</executable>
<version>
<external>$EXEC -v</external>
<nogrep regexp="for GNAT Pro"></nogrep>
@@ -189,18 +189,18 @@
-->
<compiler_description>
<name>GNAT</name>
- <executable prefix="1">(.*-wrs-.*|.*-sysgo.*|.*-elf-.*|.*-eabi-.*|.*-eabispe-.*|avr-.*|.*-elinos-linux.*|.*-linux-gnu-|.*mingw32.*|.*-xcoff-.*|arm-linux-androideabi-|arm-linux-gnueabi-|arm-linux-gnueabihf-|e500v2-gnu-linux-|powerpc-.*-linux.*-|.*-darwin.*-|.*-fastos.*|.*-qnx.*|.*-rtems.*)?gnatls</executable>
+ <executable prefix="1">(.*-wrs-.*|.*-sysgo.*|.*-elf-.*|.*-eabi-.*|.*-eabispe-.*|avr-.*|.*-elinos-linux.*|.*-linux-gnu-|.*mingw32.*|.*-xcoff-.*|arm-linux-androideabi-|arm-linux-gnueabi-|arm-linux-gnueabihf-|e500v2-gnu-linux-|powerpc-.*-linux.*-|.*-darwin.*-|.*-fastos.*|.*-qnx.*|.*-rtems.*)?gnatls-@VER@</executable>
<version>
- <external>${PREFIX}gnatls -v --version</external>
+ <external>${EXEC} -v --version</external>
<grep regexp="^GNATLS.+?(\d+(\.\d+)?)" group="1"></grep>
</version>
<languages>Ada</languages>
<variable name="gcc_version">
- <external>${PREFIX}gcc -v</external>
+ <external>${PREFIX}gcc-@VER@ -v</external>
<grep regexp="^[-\w]*gcc \S+ (\S+)" group="1"></grep>
</variable>
<variable name="gcc_version_major">
- <external>${PREFIX}gcc -v</external>
+ <external>${PREFIX}gcc-@VER@ -v</external>
<grep regexp="^[-\w]*gcc \S+ (\d+)\.\d+\.\d+" group="1"></grep>
</variable>
<runtimes default="default,kernel,native">
@@ -210,7 +210,7 @@
<directory group="2" >\.\./$TARGET/lib(32|64)?/gnat/(.*)/adalib/</directory>
</runtimes>
<target>
- <external>${PREFIX}gcc -dumpmachine</external>
+ <external>${PREFIX}gcc-@VER@ -dumpmachine</external>
<grep regexp="[^\r\n]+"></grep>
</target>
</compiler_description>
@@ -302,7 +302,7 @@
<!-- Generic C compiler for LLVM -->
<compiler_description>
<name>C_LLVM</name>
- <executable>clang</executable>
+ <executable>fake-clang</executable>
<version>
<external>clang --version</external>
--- a/db/gnat.xml 2019-06-01 21:53:53.383281607 +0200
+++ b/db/gnat.xml 2019-06-01 21:57:08.414196529 +0200
@@ -10,7 +10,7 @@
&filter_gnat;
<config>
package Compiler is
- for Driver ("Ada") use "${PATH(ada)}${PREFIX(ada)}gcc";
+ for Driver ("Ada") use "${PATH(ada)}${PREFIX(ada)}gcc-@VER@";
for Language_Kind ("Ada") use "unit_based";
for Dependency_Kind ("Ada") use "ALI_File";
for Leading_Required_Switches ("Ada") use
@@ -27,6 +27,9 @@
for Objects_Path_File ("Ada") use "ADA_PRJ_OBJECTS_FILE";
for Driver ("Ada") use
"${GPRCONFIG_PREFIX}libexec/gprbuild/gprbind";
+ for Switches ("Ada") use ("--gnatbind_path=${PREFIX(ada)}gnatbind-@VER@");
+ for Required_Switches ("Ada") use
+ Binder'Required_Switches ("Ada") & ("--RTS=${RUNTIME_DIR(ada)}");
end Binder;
for Toolchain_Version ("Ada") use "GNAT ${VERSION(ada)}";
--- a/db/c.xml 2019-06-01 21:57:36.244755708 +0200
+++ b/db/c.xml 2019-06-01 21:59:14.919191663 +0200
@@ -25,7 +25,7 @@
</compilers>
<config>
package Compiler is
- for Driver ("C") use "${PATH(c)}${PREFIX(c)}gcc";
+ for Driver ("C") use "${PATH(c)}${PREFIX(c)}gcc-@VER@";
end Compiler;
</config>
</configuration>
--- a/db/linker.xml 2021-12-21 22:36:01.054738486 +0100
+++ b/db/linker.xml 2021-12-21 22:36:59.973738600 +0100
@@ -128,9 +128,13 @@
<host name="^i686.*-linux.*$" />
</hosts>
<config>
- for Object_Lister use ("nm", "-g");
+ NM := External("NM", "nm");
+ for Object_Lister use (NM, "-g");
for Object_Lister_Matcher use " [TDRB] (.*)";
+ LDFLAGS := External_As_List ("LDFLAGS", " ");
+ for Leading_Library_Options use LDFLAGS;
+
package Linker is
for Export_File_Format use "GNU";
for Export_File_Switch use "-Wl,--version-script=";
@@ -917,7 +921,8 @@
<host name="^x86_64-.*linux.*" />
</hosts>
<config>
- for Archive_Builder use ("ar", "cr");
+ AR := External("AR", "ar");
+ for Archive_Builder use (AR, "cr");
for Archive_Builder_Append_Option use ("q");
for Archive_Indexer use ("ranlib");
for Archive_Suffix use ".a";
@@ -1274,7 +1279,7 @@
</targets>
<config>
for Library_Partial_Linker use
- ("${PATH(ada)}${PREFIX(ada)}gcc", "-nostdlib")
+ ("${PATH(ada)}${PREFIX(ada)}gcc-@VER@", "-nostdlib")
& GCC_No_Pie
& ("-Wl,-r", "-o");
</config>
@@ -1295,7 +1300,7 @@
</targets>
<config>
for Library_Partial_Linker use
- ("${PATH(c)}${PREFIX(c)}gcc", "-nostdlib")
+ ("${PATH(c)}${PREFIX(c)}gcc-@VER@", "-nostdlib")
& GCC_No_Pie
& ("-Wl,-r", "-o");
</config>
|