Skip to content

Conversation

khaledhosny
Copy link
Collaborator

This, I believe, will prevent any automatic use of subprojects be default and will only look for dependencies on the system.
https://mesonbuild.com/Subprojects.html#commandline-options

This, I believe, will prevent any automatic use of subprojects be
default and will only look for dependencies on the system.
https://mesonbuild.com/Subprojects.html#commandline-options
@ebraminio
Copy link
Collaborator

ebraminio commented Jul 6, 2020

wished it had a mode to revert to its default mode, https://mesonbuild.com/Subprojects.html#commandline-options guess we have to add forcefallback to msvc bots but that isn't equivalent to its default mode I guess which could use vcpkg for example? And needs gbenchmark be enabled again at this bot also so the removed -Dbenchmark=true will be reintroduced somehow as --force-fallback-for=google-benchmark.

@khaledhosny
Copy link
Collaborator Author

khaledhosny commented Jul 6, 2020

wished it had a mode to revert to its default mode, https://mesonbuild.com/Subprojects.html#commandline-options guess we have to add forcefallback to msvc bots but that isn't equivalent to its default mode I guess which could use vcpkg for example?

Looks like --wrap-mode=default will use meson’s default so should be enough here.

And needs gbenchmark be enabled again at this bot also so the removed -Dbenchmark=true will be reintroduced somehow as --force-fallback-for=google-benchmark.

Explicite subproject() uses should not not be affected by this change.

@ebraminio ebraminio merged commit a2b52cb into harfbuzz:master Jul 6, 2020
@ebraminio
Copy link
Collaborator

Makes sense! Thank you very much :)

@xclaesse
Copy link
Contributor

xclaesse commented Jul 7, 2020

--wrap-mode=nofallback is usually what distro should be doing. The default is easier for devs who don't need to care about dependencies, especially when building on older distro that have too old versions of dependencies.

@khaledhosny
Copy link
Collaborator Author

We intentionally want the fallback to be opt-in not opt-out.

@behdad
Copy link
Member

behdad commented Jul 8, 2020

Yeah let's keep it similar to autotools initially. If any deps were not found we can print how to enable download. In the future we might change the default.

@khaledhosny
Copy link
Collaborator Author

Currently meson prints this:

Run-time dependency fontconfig found: NO (tried pkgconfig, framework and cmake)
Not looking for a fallback subproject for the dependency fontconfig because:
Use of fallback dependencies is disabled.

meson.build:97:0: ERROR: Dependency 'fontconfig' not found and fallback is disabled

It gives some clue, but unless one already knows about --wrap-mode option, it will sound cryptic. The message can be improved by mentioning the option.

@khaledhosny khaledhosny added the meson meson build system label Dec 24, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

meson meson build system

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants