-
Notifications
You must be signed in to change notification settings - Fork 1.7k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Can't concatenate strings in cross-platform config #3878
Comments
The file format is ini-like, so it does not support the |
There are ways to do interpolation on ini-like files. |
The fact that interpolation works at all is a side effect of how I implemented it back when (I was lazy). For cross files I really prefer the explicitness of just writing it out. Cross files are written once and rarely change. The issue would be different if they were constantly in flux. But they're not. |
It is supported in pkg-config with ${macro} syntax. See section "Metadata File Syntax" in https://linux.die.net/man/1/pkg-config |
No dollar sign variable expansions. Ever! Under any circumstances! |
So I looked in the sources and since ConfigParser is used and interpolation isn't overridden I think @QuLogic's solution should work today (unless I missed something):
Default OptionParser is:
|
Related to this and rather weird is the situation with arrays: Documented but doesn't work:
Not documented but does work!!
I have tested this on 0.49.0 and tried to test on git master but cross-compiling seems totally broken at the moment, like it's almost entirely ignoring the cross file. |
The documentation says to do exactly this:
So I suspect the docs should either be fixed, or this issue should be addressed? Or am I wildly misunderstanding something? |
That works only when you pass both aarch64.ini (where |
mesonbuild/meson#3878 Fixes errors such as: ERROR: Malformed value in cross file variable c. Remove the pkg-config cross binary, as distros don't ship that AFAICT. Signed-off-by: Joel Stanley <[email protected]>
mesonbuild/meson#3878 Fixes errors such as: ERROR: Malformed value in cross file variable c. Remove the pkg-config cross binary, as distros don't ship that AFAICT. Signed-off-by: Joel Stanley <[email protected]>
mesonbuild/meson#3878 Fixes errors such as: ERROR: Malformed value in cross file variable c. Remove the pkg-config cross binary, as distros don't ship that AFAICT. Signed-off-by: Joel Stanley <[email protected]>
mesonbuild/meson#3878 Fixes errors such as: ERROR: Malformed value in cross file variable c. Remove the pkg-config cross binary, as distros don't ship that AFAICT. Signed-off-by: Joel Stanley <[email protected]>
Please see mesonbuild/meson#3878 Signed-off-by: Yu-Chen Lin <[email protected]>
This feature is not supported on older meson versions: ERROR: Malformed value in cross file variable prebuilt_libusb. Refs <mesonbuild/meson#3878> PR #3546 <#3546> Signed-off-by: Yu-Chen Lin <[email protected]> Signed-off-by: Romain Vimont <[email protected]>
Steps to reproduce:
The complaint means it can't concatenate
prefix
with'i686-w64-mingw32-g++'
in definition ofcpp
. Interestingly the following line of code:works fine.
meson version 0.47.0
The text was updated successfully, but these errors were encountered: