Opened 2 years ago
Last modified 2 years ago
#65909 reopened defect
py-berkeleydb: build failures for 10.10 and earlier, due to use of static_assert
Reported by: | mascguy (Christopher Nielsen) | Owned by: | mascguy (Christopher Nielsen) |
---|---|---|---|
Priority: | Normal | Milestone: | |
Component: | ports | Version: | 2.7.2 |
Keywords: | Cc: | ||
Port: | py-berkeleydb |
Description
Per past tickets, this may require patching to use _Static_assert
. (Along with engaging upstream.)
src/Module/berkeleydb.c:107:15: error: expected parameter declarator static_assert(sizeof(db_recno_t) == sizeof(u_int32_t), ^
Change History (6)
comment:1 follow-ups: 4 5 Changed 2 years ago by kencu (Ken)
comment:2 Changed 2 years ago by kencu (Ken)
or some version of that, anyway. looks a touch funny to me when I look at it just now, but it's been a long time since I did it.
comment:3 Changed 2 years ago by Christopher Nielsen <mascguy@…>
Resolution: | → fixed |
---|---|
Status: | assigned → closed |
comment:4 Changed 2 years ago by mascguy (Christopher Nielsen)
Resolution: | fixed |
---|---|
Status: | closed → reopened |
Replying to kencu:
you might try this, works for me. Haven't got around to adding it to MP yet.
https://github.com/kencu/kencu-legacy-support/commit/6132fe60d1b9913d959c54823855e12064540a3d
That would be far preferable to my quick fix, which is to temporarily disable use of static_assert
.
Would you be interested in adding to legacy support?
comment:5 Changed 2 years ago by jmroot (Joshua Root)
Replying to kencu:
IMHO it's not really an upstream issue, as supporting ancient MacOSX SDKs is really not something we should expect.
Going by discussion around using it in cpython, having a C11 compiler but no static_assert macro is actually pretty common across different platforms.
comment:6 Changed 2 years ago by kencu (Ken)
Here you go, mascguy:
[34588ddd014e7d8cd535a1574727f3513babe250/macports-legacy-support]
It is just copied directly out of the assert.h header from an SDK newer than 10.10.
So once a new legacysupport comes out, that should take care of that problem for ... ever.
you might try this, works for me. Haven't got around to adding it to MP yet.
https://github.com/kencu/kencu-legacy-support/commit/6132fe60d1b9913d959c54823855e12064540a3d
IMHO it's not really an upstream issue, as supporting ancient MacOSX SDKs is really not something we should expect.
Hope it works for you!