-
Notifications
You must be signed in to change notification settings - Fork 82
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
Addition of a build system generator #5
Comments
Since there's already a makefile, the Autotools (specifically automake) would be the simplest to transition to. I even created a video tutorial on the autotools, so I'm quite familiar with it. HOWEVER: What is the goal? I want to use simple tools if there's no big advantage to more sophisticated tools. The makefile is pretty simple. Is there a specific example of what you think should be done? @squinky86 - your thoughts would be welcome. |
|
Flawfinder is the first python project I've worked with that has a makefile. Most python projects, in my experience, just worry about setup.py and let users/developers handle any special cases beyond that. I could see a build system being useful to check for tools like ps2pdf, but I see it as more of a reference with helpful shortcuts more than a "this is the only way to build the project" makefile. Setuptools' setup.py is sufficient as the cross-platform build system, but I wouldn't be opposed to also supporting one of the other build systems. I'm more familiar with Autotools as well (https://www.gnu.org/software/automake/manual/html_node/Python.html). |
I think in this case the negatives of a bigger build system generator outweigh the positives. Flawfinder is designed to be extremely easy-to-install in many situations. In particular, I want to support copy-single-file installations, where users can simply copy "flawfinder" where they want & have it "just work". So I specifically forbid external dependencies other than the built-in libraries. That means users can ignore the setup.py if they wish. That also means that having a separate configuration tool is not going to work in this case. This reasoning is specifically for this one tool. I use other systems on other projects, and I even created an autotools tutorial on Youtube, so I'm certainly familiar with other tools and find them useful. But in this case I'm trying to make things absurdly easy for users to install in a variety of circumstances, including when they cannot use pip. So I appreciate the comments, but this would hamper end-user experience, which I think is more important. Thanks! |
I imagine that your software distribution goals can be achieved also by a collaboration with additional build tools. |
I suggest to reuse a higher level build system than your current make script so that powerful checks for software features will become easier.
The text was updated successfully, but these errors were encountered: