Closed N0taN3rd closed 6 years ago
While this is cool, I think it will be a maintenance overhead to reflect changes in both Makefile and the Bash script. Additionally, it would cause more confusion for new users by having multiple ways to do the same thing. This is an opinionated repo where we would prefer simplicity over flexibility. Not knowing Makefile is not an excuse, it is such a basic tool, besides most of the time they only need to run make
command.
I am not closing it yet, as others might want to give some more input on it.
@ibnesayeed and make is simple??
Basic Make is easy, so is basic Bash. Shell scripts are far more powerful than Make, but Make serves a very specific purpose and it does it very well. It's historically been a the default task runner and build tool for many software applications. While I am not against Shell script, here I am hesitant due to duplicating the same thing. By the way, your shell script is not doing the very same thing what Makefile would do.
I agree that keeping the MAKEFILE and the shell script in-sync might be a chore and lead to some confusing differences in output if one is updated and the other is not. I would recommend integrating some CI system into this repo to check this, compiling with both options and making sure they are equivalent, prior to including the additional compilation mechanism.
Unless there is a problem in one approach, I would suggest not introducing another approach. Because it would require more documentation while causing more confusion. If the users know what they are doing other than the suggested approach then they will sail their boat their way anyway. It is a bootstrapping repo with a way to do most of the things, not many ways to do one thing.
Adding a CI system integration for this task means solving a non-existing problem with more problems and dependencies to worry about.
This PR provides a sensible shell file equivalent to the provided Makefile as customizing the makefile may be difficult for some users