-
Notifications
You must be signed in to change notification settings - Fork 287
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
meson: add tests #3176
base: main
Are you sure you want to change the base?
meson: add tests #3176
Conversation
MSYS2 and MSVC:
That is an rpath problem. One way to fix is to just build static. FreeBSD:
Now this is interesting. I assume it's just called python there. But runner.py uses python3 as the binary name. And I guess meson's find_program doesn't rewrite it. @eli-schwartz any thoughts? Ubuntu:
I wonder what's going on here. |
On FreeBSD, they consider it "sneaky" and bad behavior for any software to try to run python without installing as a port. So there is no "python" program and no "python3" program either, you have to invoke it as "python3.11" or whatever. I think there may be a non-default package you can install that provides a symlink for you. |
how strange... |
so how is meson ran then? |
Since you ran Hence, the shebang of /usr/local/bin/meson, is As I said, you can install this: https://www.freshports.org/lang/python/ It should provide the "python" and "python3" symlinks "for interactive use" or whatever their silliness is. |
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## main #3176 +/- ##
=======================================
Coverage 64.01% 64.01%
=======================================
Files 104 104
Lines 21832 21832
Branches 10691 10691
=======================================
Hits 13975 13975
Misses 5643 5643
Partials 2214 2214 ☔ View full report in Codecov by Sentry. |
@kmilos so the MSYS2 failures look like an actual bug. I don't know why the exiv2 prints the wrong output. |
No idea... looks like null is replaced by a tab (randomly)?! At least it looks like the right Python version is being picked up by Meson (CMake would randomly use the default runner one instead of the MSYS2 one if not pointed to explicitly...) |
@kmilos what's more interesting is that the failing files have Syntax warnings on them. Nevertheless, it looks like exiv2 printing the wrong stuff. I'm curious why the CMake CI doesn't catch this. |
Indeed. Could be CMake and Meson are spawning processes in different ways/shells... |
meson on MSYS2 uses libiconv whereas cmake does not. Let's see if this works... |
faa7f99
to
8d0e368
Compare
Alright partial fix. std::isprint looks to be unreliable and influenced by locale. |
Interesting... Why would Meson be running in a different locale? |
Either the setlocale call does nothing or LC_ALL is different under MinGW |
cf9f156
to
ac748e1
Compare
example of a difference
something is removing the whitespace. |
6aa628e
to
97be896
Compare
Cleanest to use raw strings. Signed-off-by: Rosen Penev <[email protected]>
It's influenced by locale, which can cause problems. Signed-off-by: Rosen Penev <[email protected]>
For some reason, this unused variable causes thread sanitizer to complain on destruction of the std::string. Simple enough to remove. Signed-off-by: Rosen Penev <[email protected]>
Localization is not implemented. Signed-off-by: Rosen Penev <[email protected]>
Localization is not implemented.
Let's see if this works...