Max Kellermann
a19f3a4f9f
python/build/meson.py: put ccache prefix in array instead of stripping it
...
Turns out Meson disables ccache auto-detection when a cross-file is
used. To use ccache, the ccache prefix must be expressed in an array
instead of a single string with spaces.
2023-12-22 15:11:53 +01:00
Max Kellermann
791b3c65f3
python/build/meson: bringt back configure()
...
This reverts part of commit a3765cd363
.
The MesonProject class was not used, but the "configure" function.
2023-12-21 12:02:05 +01:00
Max Kellermann
a3765cd363
python/build: remove Meson project support
...
Obsolete, we're now using Meson subprojects.
2023-12-21 11:50:33 +01:00
Max Kellermann
39476bed85
Merge branch 'v0.23.x'
2023-09-26 15:36:26 +02:00
Max Kellermann
5b83c834ac
python/build/meson: write cross-file only if cross-compiling
2023-09-26 15:26:17 +02:00
Max Kellermann
da7f32bddb
python/build/toolchain: rename `arch` to `host_triplet`
2023-09-26 15:25:23 +02:00
Max Kellermann
48cc76f114
python/build/toolchain: add is_android, is_darwin
2023-09-26 14:49:39 +02:00
Max Kellermann
3fedd978a2
python/build/meson: disable ccache because Meson detects it automatically
2023-09-26 14:27:43 +02:00
Max Kellermann
eb23788fec
python/build: add support for fallback download URLs
2023-09-26 14:25:51 +02:00
Max Kellermann
5f253e66f6
python/build/toolchain.py: add AnyToolchain for type hints
2023-09-26 12:54:58 +02:00
Max Kellermann
3f2016e552
python: add type hints
2023-09-26 12:04:08 +02:00
Max Kellermann
23a5b8fd3c
python/build/meson.py: remove unused import
2023-05-21 20:43:09 +02:00
Max Kellermann
10aec174d5
python/{cmake,autotools}: build in verbose mode
...
Make sure all the gory details are visible in CI logs.
2023-05-21 20:41:49 +02:00
Max Kellermann
91123983ad
Revert "python/build/meson.py: keep Meson from executing Android-x86 test binaries"
...
This reverts commit 8ab2722300
. The
"needs_exe_wrapper" setting was already there, and the new one was
misplaced, it belongs in "[properties]".
2023-03-21 09:46:25 +01:00
Max Kellermann
8ab2722300
python/build/meson.py: keep Meson from executing Android-x86 test binaries
2023-03-06 14:21:37 +01:00
Max Kellermann
bd25528ca3
python/build/meson.py: remove unused import
2023-03-06 14:17:44 +01:00
Max Kellermann
740cc8ce49
python/{cmake,autotools}: build in verbose mode
...
Make sure all the gory details are visible in CI logs.
2023-03-06 13:32:48 +01:00
Max Kellermann
3cc770a00b
remove obsolete Boost dependency
...
Boost makes building a piece of software much more difficult than
necessary. It's a huge library, and just uncompressing it takes a
considerable amount of time. MPD only used a tiny fraction of it, yet
its header bloat made the MPD build very slow. Locating Boost was
difficult due to its arcane build system and its resistance to use
pkg-config; it's always a special case. MPD could never use features
of newer Boost versions because Linux distributions always shipped old
Boost versions. Boost made everything complicated and slow.
So, finally, after getting rid of GLib (commit ccdb94b06c
), switching
to C++ and using Boost (commit 0801b3f495
), we've finally get rid of
it 8 years later.
Unfortunately, I had to reimplement parts of it along the way
(e.g. IntrusiveList). Kind of NIH, but on the other hand, compiling
MPD has become much easier for users.
2023-01-23 15:06:58 +01:00
Max Kellermann
c8ebaf3521
python/build/meson.py: use "meson setup" instead of the deprecated syntax
2022-11-12 12:10:06 +01:00
Sam Bazley
fbecb05bf4
Fix Android build error: needs_exe_wrapper
...
lib/src/libmpdclient-2.19/meson.build:1:0: ERROR: Unknown options: "needs_exe_wrapper"
The "needs_exe_wrapper" option was incorrectly set under
[built-in options] rather than [properties].
2022-01-11 20:33:48 +01:00
Max Kellermann
2a02576d6d
python/build/meson.py: move c_args, ... to [built-in options]
...
As per Meson 0.56.0:
https://mesonbuild.com/Machine-files.html#properties
2021-09-21 14:57:55 +02:00
Max Kellermann
e98cef06c7
python/build/meson.py: remove --libdir=lib MultiArch workaround
...
Not necessary anymore since Meson 0.50.0:
https://mesonbuild.com/Release-notes-for-0-50-0.html#libdir-defaults-to-lib-when-cross-compiling
2021-09-21 13:58:45 +02:00
Max Kellermann
6f278977e9
build/python/project: add build(), calls _build()
...
Prepare to add some code around the _build() call.
2021-09-20 22:54:02 +02:00
Max Kellermann
09d74f05c3
python/meson: set exe_wrapper=wine for Windows builds
...
Allows running the unit tests on Linux.
2021-08-10 15:04:54 +02:00
Max Kellermann
1af8694ef6
python/meson: set needs_exe_wrapper=true only for Android targets
2021-08-10 15:00:58 +02:00
Max Kellermann
b8eb9b466a
python/meson: split the f.write() call and use f-strings
2021-08-10 15:00:58 +02:00
Max Kellermann
ca705e1e37
python/build/meson.py: set BOOST_ROOT for Meson 0.54
...
Commit
08224dafcb
changed Meson to require BOOST_ROOT for cross builds.
2020-07-01 16:55:28 +02:00
Max Kellermann
1f8d707082
python/build/meson.py: use toolchain.libs (for libc++)
2018-10-30 13:29:02 +01:00
Max Kellermann
94592c1406
build with Meson instead of autotools
...
So long, autotools! This is my last MPD related project to migrate
away from it. It has its strengths, but also very obvious weaknesses
and weirdnesses. Today, many of its quirks are not needed anymore,
and are cumbersome and slow. Now welcome our new Meson overlords!
2018-10-14 23:41:38 +02:00
Max Kellermann
13ce142df1
python/build/meson.py: generate `windres` line
2018-10-14 23:41:38 +02:00
Max Kellermann
89bf4c5fad
python/build/meson.py: move two functions to the top level
2018-10-14 21:44:15 +02:00
Max Kellermann
12bc625fe1
android/build.py: add aarch64 support
2018-08-17 19:20:25 +02:00
Max Kellermann
76290f786d
python/build/meson.py: set "needs_exe_wrapper=true"
...
Prevent Meson from running Android-x86 binaries. That will fail
because the Android standard libraries are most likely not installed.
2018-08-17 19:00:42 +02:00
Max Kellermann
626329a1cc
python/build/meson.py: create build_path if it does not exist
2018-05-22 12:31:37 +02:00
Max Kellermann
786ac87b76
python/build: add support for Meson/ninja based projects
2018-05-12 15:00:17 +02:00