Opened 3 years ago
Closed 3 years ago
#65065 closed defect (fixed)
curl: circular dependency introduced due to dependency on brotli
Reported by: | Torsten-B | Owned by: | ryandesign (Ryan Carsten Schmidt) |
---|---|---|---|
Priority: | Normal | Milestone: | |
Component: | ports | Version: | 2.7.2 |
Keywords: | Cc: | xiaoqiangwang (Xiaoqiang Wang), cooljeanius (Eric Gallager), Dave-Allured (Dave Allured) | |
Port: | curl |
Description (last modified by ryandesign (Ryan Carsten Schmidt))
Building cmake or curl currently fails due to a circular dependency:
[torstenb@phoenix:~] sudo port -s install cmake ---> Computing dependencies for cmake The following dependencies will be installed: brotli cmake curl Continue? [Y/n]: y Error: The following dependencies were not installed because all of them have unmet dependencies (likely due to a dependency cycle): curl brotli cmake Error: Follow https://guide.macports.org/#project.tickets if you believe there is a bug. Error: Processing of port cmake failed [torstenb@phoenix:~] sudo port -s install curl ---> Computing dependencies for curl The following dependencies will be installed: brotli cmake curl Continue? [Y/n]: y Error: The following dependencies were not installed because all of them have unmet dependencies (likely due to a dependency cycle): brotli cmake curl Error: Follow https://guide.macports.org/#project.tickets if you believe there is a bug. Error: Processing of port curl failed
The circular dependency is caused by cmake requiring port:curl, port:curl requiring port:brotli and port:brotli in turn requiring port:cmake.
This change was introduced in a recent commit that adds brotli support to curl. [e1ed418961c5919aacfeb582bb0baa2d74243a8f/macports-ports]
Change History (15)
comment:1 Changed 3 years ago by Torsten-B
Cc: | Torsten-B added |
---|
comment:2 Changed 3 years ago by Torsten-B
Cc: | Torsten-B removed |
---|
comment:3 Changed 3 years ago by Torsten-B
Cc: | Torsten-B added |
---|
comment:4 Changed 3 years ago by Torsten-B
Summary: | curl: circular dependency introduced due to dependency on brodle → curl: circular dependency introduced due to dependency on brotli |
---|
comment:5 Changed 3 years ago by reneeotten (Renee Otten)
Cc: | Torsten-B removed |
---|---|
Owner: | set to ryandesign |
Status: | new → assigned |
comment:6 Changed 3 years ago by ryandesign (Ryan Carsten Schmidt)
Description: | modified (diff) |
---|---|
Keywords: | curl brotli cmake removed |
Status: | assigned → accepted |
comment:7 Changed 3 years ago by ryandesign (Ryan Carsten Schmidt)
comment:8 Changed 3 years ago by Torsten-B
Alternative 3 (curl moving brotli support to a variant) doesn't actually fix the circular dependency, it just moves it to a variant and building that variant wouldn't work unless alternative 1 and/or 2 get implemented as well. Or am I missing something?
comment:9 Changed 3 years ago by ryandesign (Ryan Carsten Schmidt)
You could build curl without the variant, the dependencies would be installed, and then you could build curl again with the variant. Same strategy is used in a few other ports where such circular dependencies have no other solution (like #55393).
comment:10 Changed 3 years ago by kencu (Ken)
brotli has committed to supporting old cmake versions, so cmake-bootstrap will suffice, and it has no deps
https://github.com/google/brotli/blob/f4153a09f87cbb9c826d8fc12c74642bb2d879ea/CMakeLists.txt#L5
comment:11 Changed 3 years ago by reneeotten (Renee Otten)
Cc: | xiaoqiangwang added |
---|
comment:13 Changed 3 years ago by cooljeanius (Eric Gallager)
Cc: | cooljeanius added |
---|
comment:14 Changed 3 years ago by Dave-Allured (Dave Allured)
Cc: | Dave-Allured added |
---|
comment:15 Changed 3 years ago by ryandesign (Ryan Carsten Schmidt)
Resolution: | → fixed |
---|---|
Status: | accepted → closed |
Ugggggggh.