-
gitomat
[illumos-gate] 15203 `pargs -e` doesn't work on processes stopped at exec-success -- Robert Mustacchi <rm⊙fo>
-
gitomat
[illumos-gate] 15214 SMB should allow 256 bit ciphers -- Alexander Stetsenko <alex.stetsenko⊙gc>
-
jperkin
has anyone come across .fa (full archive) libraries yet? meson/qemu are starting to use them, and while binutils handles them ok our tooling doesn't
-
jlevon
jperkin: what exactly are they
-
andyf
Meson again :(
-
nbjoerg
[Anakin to Padme] Meson is a new build system. [Padme] It's better than autotools, isn't it?
-
jperkin
jlevon: hard to say, binutils ar/nm suggest they are just regular archives, but there's obviously some difference in the binary format as our file/nm/ar/etc just say unknown file type
-
andyf
As somebody who has packaged quite a lot of software, meson is much worse to deal with than any of them
-
jperkin
andyf: I'll see your meson and raise you scons, waf, gyp...
-
jlevon
andyf: that's surprising. it's definitely the least worst to actually write/modify stuff in IMO
-
andyf
I rate those above meson, gyp in particular is pretty nice
-
nbjoerg
waf was somewhat manageable. scons extremely slow
-
jperkin
scons in particular was the absolute worst as it didn't think we were posix
-
jlevon
except maybe, you know, makefiles.
-
nbjoerg
gyp has the google in it
-
andyf
We seem to spend all of our time patching or updating meson, or working around things
-
nbjoerg
I'd still advocate for throwing make out of posix
-
nbjoerg
now that my namesake no longer can push for his crappy extensions...
-
jperkin
meson has definitely been the one I've had to do the least to support, and I'm very anti-everything-not-autotools
-
jperkin
has been pleasantly surprising how much just works, given there's a huge number of projects converting to it
-
andyf
The patches we have had to carry to meson itself have definitely reduced over time, but I still defer updating meson itself if I can
-
andyf
The different perspectives are interesting. I recently converted the omnios nss build to use gyp, and it was a really pleasant experience (despite having to file a couple of upstream bugs to get illumos properly supported)
-
andyf
I've only come across waf for ntpsec, but I don't remember that being a problem.
-
jperkin
I'm generally coming from the side of having to come and fix something in a codebase/build tool I have zero experience in, so I need strong support for being able to grok things fast, decent build logs, and reasonably obvious ways of fixing things.
-
jperkin
meson has good output logs (hi cmake!) and so far it's been relatively trivial to add the occasional workaround in a meson.build or change meson itself.
-
jperkin
-
andyf
Which qemu version is that?
-
jperkin
macos file seems to know about it: 'libhwcore.fa: thin archive with 132 symbol entries'
-
jperkin
andyf: 7.2.0
-
andyf
build:extra:% file qemu-7.2.0/build/libhwcore.fa
-
andyf
qemu-7.2.0/build/libhwcore.fa: current ar archive, not a dynamic executable or shared object
-
andyf
Oh, a thin archive
-
jperkin
interesting
-
andyf
-
andyf
So if your meson is older than 0.64.1, that would explain it
-
jperkin
I already patched that out in
github.com/NetBSD/pkgsrc/blob/trunk…patch-mesonbuild_linkers_linkers.py but maybe it needs fixing elsewhere too now
-
jperkin
anyway thanks for the hint, I'll go digging
-
andyf
-
jperkin
we're on 1.0.1 so should include that
-
andyf
Or they broke it again..
-
jperkin
ok I found the problem, qemu ships it's own copy of meson..
-
jperkin
and I guess you don't see the same failure due to: 'ERROR: --python requires using QEMU's embedded Meson distribution, but it was not found.' when I tried deleting it
-
andyf
I have no idea why it works for us then
-
jperkin
you don't appear to pass --python, at least if I'm looking in the right file
-
andyf
The build log shows us running our system meson though, which might be doing it
-
andyf
[3] --- configure (amd64)
-
andyf
Running: /usr/lib/python3.10/bin/meson setup
-
jperkin
so I assume without --python it'll use the system meson
-
nahamu
Lazy question: I'll go read the code if I have to, but does anyone know if port_getn returning EINTR might be returning valid events? E.g. If I requested a minimum of 2 events and specified a null timeout, could I get back EINTR and a single event?
-
nahamu
(or even 2 events and a long timeout that hadn't expired)
-
nahamu
the man page suggests that EINTR would not update nget and that I should assume that I got back no valid events.
-
nahamu
But I do wonder what would happen to a thread waiting indefinitely for two events where one had already been generated... is it impossible for the call to be interrupted at that point??
-
denk
I have a similar question too about "brain-damaged OS bug"; it's when read(2) return -1 with errno == 0
-
denk
I saw it 3 times in xorg, mouse & keyboard modules
-
andyf
It is possible that it has not been compiled with _TS_ERRNO
-
andyf
If you don't do that (or -D_REENTRANT), then in a multi-threaded app you can see things like that (denk)
-
denk
I unedstand it now, thanks
-
rmustacc
nahamu: I don't believe that if you get EINTR it'll return with fewer evens and you have to check it.
-
rmustacc
*events
-
nahamu
rmustacc: Making sure I understood: So I can trust the man page that if I get EINTR I got back no events and can just try again?
-
rmustacc
I believe so.
-
rmustacc
That's what a ~5 min read of code led me to think.
-
rmustacc
But it's always possible bugs exist!
-
nahamu
Thank you for taking the time to look at that for me!
-
pmooney
nahamu: It might be worth filing a bug about clarifying the language in the man page
-
nahamu
I think it's fine. Prior instances of code I've written suggest I used to understand how things work.
-
pmooney
I mean, if it lead to asking about it on IRC, or potentially going code spelunking, that seems like we could provide more detail
-
» pmooney shrugs
-
nahamu
I'll dig up my credentials and file something.
-
pmooney
up to you
-
pmooney
I often find myself writing comments/docs for the purpose of helping future-me
-
alanc
I have added examples to man pages just to save me from having to puzzle out how to do something once again that I only do once every year or two when someone asks how to do it
-
nahamu
-
fenix
→
BUG 15482: PORT_GET(3C) could be clearer about port_getn and EINTR (New)
-
pmooney
nahamu: thanks!
-
nahamu
I can take a hint if it's made twice. :-P