c-ringbuf icon indicating copy to clipboard operation
c-ringbuf copied to clipboard

build: add autotools & cmake

Open mochaaP opened this issue 11 months ago • 1 comments

The old Makefile is renamed to GNUmakefile, and is prioritized by GNU Make.

To do an out-of-source build with Autotools:

  • mkdir build/ && ../configure && make

To make a dist tarball:

  • make dist

Signed-off-by: Zephyr Lykos <[email protected]>


By submitting this PR, you agree to the following:

  • [x] This contribution is dedicated to the public domain per the COPYING file included in this distribution. I am waiving any copyright claims with respect to this contribution, and I assert that this contribution is my own creation, and not taken from another work.

mochaaP avatar Mar 13 '24 10:03 mochaaP

I appreciate the effort you've put into this PR. It looks comprehensive and carefully done.

However, I have prior experience maintaining a relatively popular open source project written in C/C++, and autotools and co. were an absolute PITA to maintain. In fact, one of the reasons I originally released this project without any packaging is that I didn't want to go anywhere near another autotools project.

Additionally, it's been my experience that adding cross-platform packaging creates the expectation that you're offering to support a multitude of different platforms (including Windows), and in the process make the implementation less straightforward, but a straightforward implementation is one of the primary goals of this project. There've been quite a few requests for changes to support this platform or that (or compiler, or memory model, or threads implementation, etc.), but I've felt comfortable rejecting most of them on the grounds that this project isn't a proper package, as such, and is instead intended to be used as a starting point for use in your own application.

Therefore, I'm inclined to reject this PR, as I did in #20. I am seriously considering relicensing the project per your request in #22. Assuming I do that, I would then encourage you to fork the project and package it, if you're up for maintaining it.

dhess avatar Mar 20 '24 18:03 dhess