Opened 4 months ago
Closed 3 months ago
#70350 closed defect (fixed)
Provide fgetattrlist via legacysupport
Reported by: | barracuda156 | Owned by: | fhgwright (Fred Wright) |
---|---|---|---|
Priority: | Normal | Milestone: | |
Component: | ports | Version: | 2.9.3 |
Keywords: | Cc: | ryandesign (Ryan Carsten Schmidt), catap (Kirill A. Korinsky), kencu (Ken), macportsraf | |
Port: | legacysupport, ruby |
Description
Is there any reason why legacysupport
provides fsetattrlist
but not fgetattrlist
? This seems to break ruby with gcc14, since configure check misdetects fgetattrlist
as being available, while it is not present in /usr/include/unistd.h
. I think this is because of legacysupport
, and autoconf
making a wrong assumption that one implies another automatically.
Ruby introduced a check here: https://github.com/ruby/ruby/commit/ddf1f59df5fbff6c659177bc36e161b2ae285d5f
If possible, it is desirable to provide fgetattrlist
via legacysupport
. If it is not possible, then we should find a way to not use legacysupport
during configure stage of Ruby. (A temporary fix could be to set ac_cv_func_fgetattrlist=no
manually, but it is clearly suboptimal.)
Change History (2)
comment:1 Changed 3 months ago by fhgwright (Fred Wright)
comment:2 Changed 3 months ago by fhgwright (Fred Wright)
Owner: | set to fhgwright |
---|---|
Resolution: | → fixed |
Status: | new → closed |
Replying to barracuda156:
I don't think your diagnosis is correct, since Ruby doesn't use
fsetattrlist()
, and the code you referenced also doesn't reference it. If something weird is happening withgcc14
, you'll have to investigate, sincegcc14
isn't the normal compiler selection for Ruby on any supported platform.That's been added as of https://github.com/macports/macports-legacy-support/commit/af8a73fc55b153e86d090198e782ca20b7ad2221, but the author neglected to reference this ticket, and I consequently didn't reference this ticket in the summary for the port update.
This ticket should be closed as fixed.