4 ms·
It is a bad idea to use "makemake" as a name, I have seen/heard about at least 5 different programs/scripts/... called makemake during the last 25 years, each o
by ReleaseCandidat 3y ago
It is a bad idea to use "makemake" as a name, I have seen/heard about at least 5 different programs/scripts/... called makemake during the last 25 years, each of which had been quite widespread (I wouldn't have heard of that 20 years ago if it hadn't ;). And nowadays I get quite a number of Github repos called "makemake".
And there is always makedepend (and similar named programs) too, of course.
I don't want to sound too negative, but what does this version do that all the other existing 13843215 versions don't?
- quelsolaar 3y agoIt builds a Android APK with one line of comand line on a fresh install linux to begin with (Thanks to Felix) thats pretty cool. Id say the main use case is to move dependencies from a project file to the actiual C files that have the dependencies, This way if the dependencies change all projects that use the file have their build process automaticaly updated. It also removes the need to list the files included in a project since this is information that already exists in the .c files. Any time you have to define the same thing in two places, you have the risk of them not beeing in sync. This way there is only one canoical ground truth. Source and build process can never be out of sync.
- ReleaseCandidat 3y agoI'm sorry, but that doesn't really answer my question. I'll try another one: does it correctly set preprocessor directives before parsing the includes? E.g. does it correctly parse stuff like #ifdef FOO #include <bar> #else #include <baz> #endif
- quelsolaar 3y agoNo, Bercause MakeMake cant know what defines are made by the compiler on the system. MakeMake may not even run on the same system as the resulting makefile will be used on. This means that all source code files has to be compilable on all platforms, and thats good practice anyways, so thats not a problem for me. The makemake pragma lets you define platform specific build options.
- bregma 3y ago> This means that all source code files has to be compilable on all platforms And then it hits the real world and you need to switch to a tool that handles it.
- quelsolaar 3y agoI have no problem putting ifdefs around my platform specific code.
- rob74 3y agoMight have something to do with https://en.wikipedia.org/wiki/Makemake https://en.wikipedia.org/wiki/Makemake: > In July 2008, in accordance with IAU rules for classical Kuiper belt objects, 2005 FY9 was given the name of a creator deity. The name of Makemake, the creator of humanity and god of fertility in the myths of the Rapa Nui, the native people of Easter Island, was chosen in part to preserve the object's connection with Easter.