Date: prev next · Thread: first prev next last
2011 Archives by date, by thread · List index


My 'dmake' fu is basically non-existent, so I haven't poked at this seriously yet. [...] a 
transition is underway to GNU make

Oh, (unfortunately) you have it backwards regarding the complexity;)

dmake is mostly a normal make with few special features. Understanding how things work in the old 
build mechanism is not that hard, it does not require re-adjusting your perception of what 
makefiles are and how they look. Basically, it uses plain makefiles, that include a set of common 
"headers" with makefile snippets. There are relatively normal-looking rules where targets depend on 
pre-requisites with a  recipe of commands following. Sure, there are nests of .IF/.ELSE/.ENDIF 
conditionals. Sure, the actual rules are in the "headers" and use variables defined in the 
outermost directory-specific makefile.mk. But still...

It's the new GNU Make based system that is much harder to understand... because there the makefiles 
don't look normal at all, as all the actual rules are generated dynamically by eval and call 
function invocations. Sure, looking at the top level of a makefile for a deliverable in a module 
you can guess what the stuff means, I am not saying *that* is hard. But understanding how it 
actually works, and doing changes to that, can be hard.

--tml



Context


Privacy Policy | Impressum (Legal Info) | Copyright information: Unless otherwise specified, all text and images on this website are licensed under the Creative Commons Attribution-Share Alike 3.0 License. This does not include the source code of LibreOffice, which is licensed under the Mozilla Public License (MPLv2). "LibreOffice" and "The Document Foundation" are registered trademarks of their corresponding registered owners or are in actual use as trademarks in one or more countries. Their respective logos and icons are also subject to international copyright laws. Use thereof is explained in our trademark policy.