You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Thanks @noelmcloughlin - I have to admit that I am using Makefiles a lot, and this specific pattern, having a root Makefile that is managed by the project template and a project.Makefile that is used to extend the content of the Makefile (and, in some cases, overwriting it, we use a lot in frameworks like the Ontology Development Kit, see, eg. here:
So we inherit all variables, all goals etc, and overwrite or extend what is necessary. Sometimes, if we see the same code being extended in many different projects (multi language support is an example from the ontology world, or the use of design patterns) we extend the Makefile to supply this feature to everyone.
Activity
matentzn commentedon Feb 2, 2024
I personally do not agree - we use it in SSSOM for example for test file validation, and there we plan to use it also for things like generating documentation pages eg https://github.com/monarch-initiative/monarch-documentation/blob/main/project.Makefile#L15
noelmcloughlin commentedon Feb 2, 2024
Wow, did not realize some users are very technical to use the feature.
I'll update #57 (comment) with your link to say needs consideration. thanks.
matentzn commentedon Feb 2, 2024
Thanks @noelmcloughlin - I have to admit that I am using Makefiles a lot, and this specific pattern, having a root
Makefile
that is managed by the project template and aproject.Makefile
that is used to extend the content of theMakefile
(and, in some cases, overwriting it, we use a lot in frameworks like the Ontology Development Kit, see, eg. here:https://github.com/obophenotype/human-phenotype-ontology/blob/3a4062111bc683b9c9d1e126eb62a6ed5e44ad28/src/ontology/Makefile#L840
So we inherit all variables, all goals etc, and overwrite or extend what is necessary. Sometimes, if we see the same code being extended in many different projects (multi language support is an example from the ontology world, or the use of design patterns) we extend the
Makefile
to supply this feature to everyone.