Re: Meson build updates
Tristan Partin <tristan@neon.tech>
On Thu Jun 29, 2023 at 2:02 PM CDT, Andres Freund wrote: > Hi, > > On 2023-06-13 14:56:36 -0500, Tristan Partin wrote: > > I was thinking today. When you initially wrote the build, did you try > > using the src/bin/meson.build file as the place where all the binaries > > were built? As you say, most of the src/bin/xxx/meson.build files are > > extrememly reptitive. > > > We had a similar-ish issue in my last project which I solved like: > > > > https://github.com/hse-project/hse/blob/master/tools/meson.build#L20-L405 > > > > This is a pattern I used quite frequently in that project. One benefit > > of this approach is that the binaries all end up next to each other in > > the build tree which is eventually how they'll be laid out in the > > install destination. The other benefit is of course reducing reptitive > > code. > > I think the build directory and the source code directory not matching in > structure would have made it considerably harder sell for people to migrate. > > I.e. I considered it, but due to meson's "no outputs outside of the current > directory" rule, it didn't (and sadly still doesn't) really seem viable. Yeah, I guess it is a matter if you like the layout being closer to the installation or the source tree at the expense of repetition. I am partial to the installation since it is less to type if you run a binary from the build directory and less repetition, but all good. Maybe something that could be reconsidered when autotools is dropped. I still think the overrides are important, at the very least for libpq, but I will defer to your aforementioned decision for now. -- Tristan Partin Neon (https://neon.tech)
Commits
-
meson: Make detection of python more robust
- c79ca0485a62 16.1 landed
- 41da94fd5c74 17.0 landed
-
meson: Pass more feature option through to required kwargs
- 5a7280d9880f 16.0 landed
- 47caa710cebe 17.0 landed
-
meson: Tie adding C++ support to the llvm Meson option
- 7fc064d9b70f 16.0 landed
- 7a7f13afee92 17.0 landed
-
meson: Fix intl misspelling
- b750e74e6ec3 16.0 landed
-
meson: Use a better error message in an impossible case
- 99e57663518b 16.0 landed
-
meson: Make some Meson style more consistent with surrounding code
- af492eb6d6c9 16.0 landed
-
meson: Fix some grammar usage in Meson comments
- 74668cbf0fcc 16.0 landed
-
meson: Mention the correct way to disable readline support
- f5159c734fe4 16.0 landed
-
meson: Remove old comment
- 45c88eecb4a6 16.0 landed
-
meson: Use the not_found_dep constant
- 38977dd2bdac 16.0 landed
-
meson: Attach colon to keyword argument
- c55d31e59c89 16.0 landed
-
meson: Use consistent Meson option description formats
- b2ec7f543f9e 16.0 landed
-
meson: Use consistent casing in Meson option descriptions
- 529449c379b9 16.0 landed
-
meson: Remove triple-quoted strings
- 559bdd58eb71 16.0 landed