Skip to content

Instantly share code, notes, and snippets.

@andlabs
Created March 30, 2019 21:47
Show Gist options
  • Save andlabs/2395972a6f630da3d22f96332eda3b97 to your computer and use it in GitHub Desktop.
Save andlabs/2395972a6f630da3d22f96332eda3b97 to your computer and use it in GitHub Desktop.
examples/meson.build:# MESONTODO define the top-level examples target here
I would like a target 'examples' that just builds all the targets in that file, as a convenience.
Discussion related to the following TODO may make this a moot point, though if I could group build targets in one of the IDE file generators, then that would apply here too, I bet
meson.build:# MESONTODO figure out why test and examples aren't included in ninja all
I was under the impression that 'all' was different from not specifying a target at all, and that it would build everything that was marked install_with_default: false
However, given that there are a few things which are top-level targets (like Windows resource files) that isn't in my control, I might decide to just drop the whole separate targets thing entirely and have ninja build everything, and then set my CI tool to produce the binary distributions by cherrypicking things from a layout=flat meson-out/.
meson.build:# MESONTODO "cl : Command line warning D9038 : /ZI is not supported on this platform; enabling /Zi instead"
The key (if not only) difference between /ZI and /Zi is that /ZI supports Visual Studio's Edit And Continue feature. I don't know why I'm getting this warning with the 64-bit Native Tools in 2013, but eh. I wonder if meson can do a configure-time check for this option instead. Maybe I'll file a bug.
meson.build:# MESONTODOs disable incremental linking? I forget if meson already doesn't do this or not; we did it manually in cmake
I'm not sure why I opted out of this. Right now I'm just passing /INCREMENTAL:NO in add_project_link_arguments(), but if meson has some internal machinery for this like it does with -Wl,--no-undefined, I'd like to use that instead.
test/meson.build:# MESONTODO meson doesn't let us name this target test, but also doesn't seem to provide a way to override the executable name????
cmake had the same restriction with target names, but it allowed me to change the name of the output executable from tester(.exe) to test(.exe); I don't see that option in meson
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment