dschmenk / PLASMA

Proto Language AsSeMbler for All (formerly Apple)
MIT License
191 stars 26 forks source link

Second make without make clean is noisy #38

Closed ZornsLemma closed 6 years ago

ZornsLemma commented 6 years ago

I don't know if this is just my machine (Ubuntu 16.04, FWIW) but I just checked out a clean copy of your repository (none of my own changes at all). If cd into the 'src' directory and do a 'make', it's fine. But if I do a second 'make', I get this:

$ make
mkdir rel
mkdir: cannot create directory ‘rel’: File exists
makefile:124: recipe for target 'vmsrc/apple/plvmzp.inc' failed
make: [vmsrc/apple/plvmzp.inc] Error 1 (ignored)
mkdir rel/apple
mkdir: cannot create directory ‘rel/apple’: File exists
makefile:124: recipe for target 'vmsrc/apple/plvmzp.inc' failed
make: [vmsrc/apple/plvmzp.inc] Error 1 (ignored)
rm vmsrc/plvmzp.inc
rm: cannot remove 'vmsrc/plvmzp.inc': No such file or directory
makefile:124: recipe for target 'vmsrc/apple/plvmzp.inc' failed
make: [vmsrc/apple/plvmzp.inc] Error 1 (ignored)
ln -s apple/plvmzp.inc vmsrc/plvmzp.inc
rm vmsrc/plvmzp.inc

I've played around a bit and I think this is just noise and the build does work fine, but it certainly surprised me the first time I saw it.

Would judicious addition of a few '-' prefixes on the mkdir/rm commands help? (https://stackoverflow.com/questions/3477292/what-do-and-do-as-prefixes-to-recipe-lines-in-make#3477400)

dschmenk commented 6 years ago

I am using the '-' prefixes. That's the noise you're seeing. Any help to clean that up is appreciated.

Have I mentioned how much I hate makefiles?

ZornsLemma commented 6 years ago

Whoops, I should have checked - serves me right for making hasty reports late at night.

I'm not a big makefile fan myself either. I've had a fiddle around and come up with something that I think helps a bit - I'll submit a pull request for it and see if I can tell github it relates to this issue. I'm still sure there's a better way if we could only think of it...