Sat, 20 Jan 2024 15:47:39 +0100
improve toolchain detection
relates to #347
0
38775db5fdf5
add existing source
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff
changeset
|
1 | <?xml version="1.0" encoding="UTF-8"?> |
29
5e958351935d
add XML schema - fixes #267
Mike Becker <universe@uap-core.de>
parents:
18
diff
changeset
|
2 | <project xmlns="http://unixwork.de/uwproj"> |
7
686991ae6e2f
add configureable make variables
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
5
diff
changeset
|
3 | <!-- makefile config --> |
686991ae6e2f
add configureable make variables
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
5
diff
changeset
|
4 | <config> |
43
741a0d9efa47
replace type="exec" with exec="true" - fixes #295
Mike Becker <universe@uap-core.de>
parents:
29
diff
changeset
|
5 | <var name="HOST" exec="true">uname -n</var> |
88
0a663c3692a0
add support for config.site - fixes #313
Mike Becker <universe@uap-core.de>
parents:
68
diff
changeset
|
6 | <var name="prefix">`pwd`/work</var> |
0a663c3692a0
add support for config.site - fixes #313
Mike Becker <universe@uap-core.de>
parents:
68
diff
changeset
|
7 | <var name="install_dir">$prefix</var> |
7
686991ae6e2f
add configureable make variables
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
5
diff
changeset
|
8 | </config> |
686991ae6e2f
add configureable make variables
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
5
diff
changeset
|
9 | |
8
82cd9f1d94cb
add c++ compiler detection
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
7
diff
changeset
|
10 | <dependency> |
67
e43d30273f74
check compilers before any dependency checks
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
65
diff
changeset
|
11 | <lang>c</lang> |
e43d30273f74
check compilers before any dependency checks
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
65
diff
changeset
|
12 | </dependency> |
e43d30273f74
check compilers before any dependency checks
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
65
diff
changeset
|
13 | |
e43d30273f74
check compilers before any dependency checks
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
65
diff
changeset
|
14 | <dependency name="cpp"> |
65
6db50c6df6e3
add support for cxxflags and fix lang parser
Mike Becker <universe@uap-core.de>
parents:
55
diff
changeset
|
15 | <lang>cpp</lang> |
67
e43d30273f74
check compilers before any dependency checks
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
65
diff
changeset
|
16 | </dependency> |
5
895bf81d3b6e
add missing source changes
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
4
diff
changeset
|
17 | |
103
01ec9f32835e
add toolchain attribute - relates to #346
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
88
diff
changeset
|
18 | <dependency toolchain="gcc"> |
01ec9f32835e
add toolchain attribute - relates to #346
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
88
diff
changeset
|
19 | <cflags>-DTOOLCHAIN_GCC</cflags> |
01ec9f32835e
add toolchain attribute - relates to #346
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
88
diff
changeset
|
20 | </dependency> |
01ec9f32835e
add toolchain attribute - relates to #346
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
88
diff
changeset
|
21 | |
01ec9f32835e
add toolchain attribute - relates to #346
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
88
diff
changeset
|
22 | <dependency toolchain="clang"> |
01ec9f32835e
add toolchain attribute - relates to #346
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
88
diff
changeset
|
23 | <cflags>-DTOOLCHAIN_CLANG</cflags> |
01ec9f32835e
add toolchain attribute - relates to #346
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
88
diff
changeset
|
24 | </dependency> |
01ec9f32835e
add toolchain attribute - relates to #346
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
88
diff
changeset
|
25 | |
01ec9f32835e
add toolchain attribute - relates to #346
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
88
diff
changeset
|
26 | <dependency not="gcc"> |
01ec9f32835e
add toolchain attribute - relates to #346
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
88
diff
changeset
|
27 | <cflags>-DNOT_TOOLCHAIN_GCC</cflags> |
01ec9f32835e
add toolchain attribute - relates to #346
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
88
diff
changeset
|
28 | </dependency> |
01ec9f32835e
add toolchain attribute - relates to #346
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
88
diff
changeset
|
29 | |
01ec9f32835e
add toolchain attribute - relates to #346
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
88
diff
changeset
|
30 | <dependency not="clang"> |
01ec9f32835e
add toolchain attribute - relates to #346
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
88
diff
changeset
|
31 | <cflags>-DNOT_TOOLCHAIN_CLANG</cflags> |
01ec9f32835e
add toolchain attribute - relates to #346
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
88
diff
changeset
|
32 | </dependency> |
01ec9f32835e
add toolchain attribute - relates to #346
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
88
diff
changeset
|
33 | |
5
895bf81d3b6e
add missing source changes
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
4
diff
changeset
|
34 | <!-- library dependencies --> |
18
0df7309d498e
add PREFIX parameter to install script
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
15
diff
changeset
|
35 | <dependency name="libxml2" platform="macos"> |
43
741a0d9efa47
replace type="exec" with exec="true" - fixes #295
Mike Becker <universe@uap-core.de>
parents:
29
diff
changeset
|
36 | <cflags exec="true">xml2-config --cflags</cflags> |
741a0d9efa47
replace type="exec" with exec="true" - fixes #295
Mike Becker <universe@uap-core.de>
parents:
29
diff
changeset
|
37 | <ldflags exec="true">xml2-config --libs</ldflags> |
18
0df7309d498e
add PREFIX parameter to install script
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
15
diff
changeset
|
38 | </dependency> |
0df7309d498e
add PREFIX parameter to install script
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
15
diff
changeset
|
39 | |
5
895bf81d3b6e
add missing source changes
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
4
diff
changeset
|
40 | <dependency name="libxml2"> |
895bf81d3b6e
add missing source changes
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
4
diff
changeset
|
41 | <pkgconfig>libxml-2.0</pkgconfig> |
2
14a4b7f0bc74
add element for adding make code for dependencies
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
0
diff
changeset
|
42 | </dependency> |
14a4b7f0bc74
add element for adding make code for dependencies
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
0
diff
changeset
|
43 | |
103
01ec9f32835e
add toolchain attribute - relates to #346
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
88
diff
changeset
|
44 | <dependency name="openssl" toolchain="clang"> |
5
895bf81d3b6e
add missing source changes
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
4
diff
changeset
|
45 | <pkgconfig>openssl</pkgconfig> |
67
e43d30273f74
check compilers before any dependency checks
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
65
diff
changeset
|
46 | <lang>c</lang> |
103
01ec9f32835e
add toolchain attribute - relates to #346
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
88
diff
changeset
|
47 | <cflags>-DOPENSSL_CLANG</cflags> |
5
895bf81d3b6e
add missing source changes
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
4
diff
changeset
|
48 | </dependency> |
895bf81d3b6e
add missing source changes
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
4
diff
changeset
|
49 | |
15
971ac4f0f1df
fix toolchain detection in case gcc is not available
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
8
diff
changeset
|
50 | <dependency name="openssl" platform="bsd"> |
971ac4f0f1df
fix toolchain detection in case gcc is not available
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
8
diff
changeset
|
51 | <ldflags>-lssl -lcrypto</ldflags> |
971ac4f0f1df
fix toolchain detection in case gcc is not available
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
8
diff
changeset
|
52 | </dependency> |
103
01ec9f32835e
add toolchain attribute - relates to #346
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
88
diff
changeset
|
53 | |
01ec9f32835e
add toolchain attribute - relates to #346
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
88
diff
changeset
|
54 | <dependency name="openssl"> |
01ec9f32835e
add toolchain attribute - relates to #346
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
88
diff
changeset
|
55 | <pkgconfig>openssl</pkgconfig> |
01ec9f32835e
add toolchain attribute - relates to #346
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
88
diff
changeset
|
56 | <lang>c</lang> |
01ec9f32835e
add toolchain attribute - relates to #346
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
88
diff
changeset
|
57 | </dependency> |
67
e43d30273f74
check compilers before any dependency checks
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
65
diff
changeset
|
58 | |
5
895bf81d3b6e
add missing source changes
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
4
diff
changeset
|
59 | <!-- optional dependencies --> |
895bf81d3b6e
add missing source changes
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
4
diff
changeset
|
60 | <dependency name="libpq"> |
895bf81d3b6e
add missing source changes
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
4
diff
changeset
|
61 | <pkgconfig>libpq</pkgconfig> |
895bf81d3b6e
add missing source changes
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
4
diff
changeset
|
62 | </dependency> |
4
6bf4c948d0ba
make targets without name and prefix possible
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
3
diff
changeset
|
63 | |
6bf4c948d0ba
make targets without name and prefix possible
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
3
diff
changeset
|
64 | <target> |
47
78ee95836412
automatically disable default-features if dependencies fail
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
43
diff
changeset
|
65 | <feature name="pg" default="true"> |
67
e43d30273f74
check compilers before any dependency checks
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
65
diff
changeset
|
66 | <dependencies>libpq,cpp</dependencies> |
5
895bf81d3b6e
add missing source changes
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
4
diff
changeset
|
67 | </feature> |
68
c997c0978665
fix automatic feature disabling failed when more than one dependency is missing
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
67
diff
changeset
|
68 | <dependencies>libxml2,openssl</dependencies> |
4
6bf4c948d0ba
make targets without name and prefix possible
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
3
diff
changeset
|
69 | </target> |
0
38775db5fdf5
add existing source
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff
changeset
|
70 | </project> |
38775db5fdf5
add existing source
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff
changeset
|
71 |