nextvi icon indicating copy to clipboard operation
nextvi copied to clipboard

why not use a Makefile rather than a build.sh?

Open apprehensions opened this issue 2 years ago • 6 comments

apprehensions avatar Sep 08 '22 08:09 apprehensions

because of its simplicity

polluks avatar Sep 08 '22 10:09 polluks

Why do you need to incrementally build something that completes in 0.5 sec on a thinkpad.

173duprot avatar Nov 19 '22 01:11 173duprot

I really like your approach.

Makefiles are extra dependencies. We have shell script and it's enough.

LinArcX avatar Mar 19 '23 16:03 LinArcX

how tf is it an extra dependency lmao? make is required on a POSIX system.

apprehensions avatar Mar 19 '23 17:03 apprehensions

At the end of the day, makefiles will run user space commands from your shell. And execute your compiler. (With proper arguments)

Why you need to add that extra layer for just building a software.

You can directly talk to your shell.

This will brings us:

  1. You (and everyone else that wants to read your project) don't need to learn makefiles syntax(IMO, one of the worst)
  2. It's easier to understand what's going on under the hood. (By removing extra layer of unnecessary dependency)

Ps: it's not a good argument that if project X, use technology Y, we should use it too.

Think about what I Said before. Is it reasonable for you?

LinArcX avatar Mar 19 '23 17:03 LinArcX

using a 'shell script' that by your argument already does what the makefile does, you are simply re-inventing the wheel.

  • but muh contributions to makefile makefile is a standard, and the same argument applies to build.sh, it requires someone to know shell script.

  • but muh readability and 'dependency' like i said, make and sh are defined by POSIX. if a system doesnt have make, or isnt' able to get it. it is invalidating standards to keep shit together. plus, make -n.

i don't see ANY reasoning why someone should re-invent the wheel especially when someone can just use a build system standard that all C programmers understand already.

additionally, the creators of makefiles saw that a shell script in every project, and while being a mess; solves a simple problem. what is happening here is we are back at the beginning.

apprehensions avatar Mar 19 '23 17:03 apprehensions

No response?

apprehensions avatar Jul 15 '24 18:07 apprehensions

Makefile has been added to patches branch. Basically that's where all the optional stuff goes anyways. For those who rely/need it.

kyx0r avatar Jul 15 '24 18:07 kyx0r