-
Notifications
You must be signed in to change notification settings - Fork 1.2k
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
Why no autotools anymore? #1183
Comments
One problem caused by requiring CMake is that it can cause a dependency cycle. CMake can optionally use curl and in some package managers like MacPorts this functionality is enabled. Curl can optionally use brotli and since this seemed to be desirable it is also enabled in MacPorts. Brotli depends on CMake, and thus there exists a dependency cycle that cannot be satisfied. In MacPorts this cycle is broken by offering a second CMake port with only minimal functionality (e.g. no curl support) and brotli is made to use that, but users have complained of the need to have two CMakes. In my view it would be preferable for MacPorts to build brotli with autotools to avoid the need for the second CMake, but now that option is no longer available to us. |
Yeah, autotools has the advantage that its generated build system doesn't require any external dependencies (outside of basic system utilities like a working shell) in order to work. |
I made a repository whose c subdirectory has autotools to build C implementation. I hope if it could be better than nothing for the people having circular dependency problem of C or C++ programs. |
On 2023-Jul-10, autotools are dropped by a commit. It seems that the current developers suggest to use CMake.
It is hard to have working CMake on some ancient platforms (without sufficiently modern C++ compilers), although it seems that C sources of Brotli are still able to be compiled with such platforms.
I wish if autotools are restored, even if it is only c/ subdirectory. What was the critical reason to drop autotools?
The text was updated successfully, but these errors were encountered: