openoffice-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From janI <>
Subject Re: [proposal] replace with a central Makefile.
Date Fri, 18 Oct 2013 12:02:07 GMT

On 18 October 2013 13:36, Andre Fischer <> wrote:

> On 18.10.2013 11:32, janI wrote:
>> Hi.
>> due to the discussion in thread "Mentor a new build system", I have made a
>> proposal for a central Makefile located in main.
> Hi Jan,
> it is great that you are going to improve this part of the build system.
>  But I think that we need more details about how the proposed build system
> works.  Without them I can not really evaluate the proposal.

First of all, I agree with juergens remarks that this should be discussed
before implemented, hence the wiki page.

Secondly this has nothing directly to do with the proposed build system,
its a simple replacement of in the current system.

I know that works, but having a Makefile in main, would make us
one step closer on being compatible with the distros. To me this job is a
simple cleanup, not something we deadly need, but nice to have.

> Some remarks regarding the missing options:
> --from <module>
>    This is one of the more important options and one that I use frequently
> (also in the form --all:<module>).
>    Note that if you are in <moduleA> and call 'make --from <moduleB>' then
> all modules are built
>    a) which <moduleA> depends on
>    b) but not those that <moduleB> depends on
>    c) Both <moduleA> and <moduleB> are built.

I have changed the documentation.

I use the --all:<module> myself very often, and have changed the
documentation, because it is of course supported.

The difference is that you do the call in main, but that is a minor detail
that can be easily corrected (have <module>/Makefile calling main/Makefile.

I have also changed documentation on --html due to juergens comments.

> --prepare
>    Also one option that is important for our every day work.  Use case:
> You make changes in <module> and are not sure if these changes are
> compatible/incompatible.  To be on the safe side you discard the output of
> all depending modules.  To save time you keep the output of all other
> modules.
>    Often used together with '--from' like 'make --prepare --from svx' to
> prepare a build after making changes in svx.

Documentation changed, funny thing is that svx does not clear correctly on
my ubuntu build.

> --since <module>
>    A variant of '--from'.  The only difference is that <module> itself is
> not built.
>    If your proposed approach is similar to what my script produces then it
> is not too difficult to support --from/--since.  I made some experiments in
> this direction but was to lazy to finish them.

My approach is very similar, but I failed to see how --since is supported.
And question is if its real important.

> --job
> --pre_job
> --post_job
>   These are sometimes handy to run a non-standard command for all modules.

I have added them, they are by the way a good example why we need a
discussion I have never used them.

However maybe the real discussion is "do we want to replace build and have
a main/Makefile instead?"

> - I have not used the rest of the unsupported options and would not miss
> them.  Others may have other sets of options that are important to them.
> Some general remarks:
> - Why keep one makefile per module?  Why not put all the inter-module
> dependencies into one file (like my script does)?

Ups, I did not explain that correctly, I propose 1 Makefile "main/Makefile"
with all inter-module and 1 Makefile "<module>/Makefile" that today just
will call the old makefiles as described in prj/build.lst

- Why not use the oportunity to move (a part of) the build environment out
> of the way to, say, build/ ?
You have guessed my next step.

> - How are dependencies between modules handled (just the manual
> dependencies from prj/build.lst or also the file dependencies introduced by
> gmake).

See doc. on --from. Its done with <module>.done files

> - How is the output of the individual calls to dmake or GNU make
> handled/made accessible.  Ie. if there is a build error, how can I look up
> the corresponding build output?

see doc. script make_log

> - Are the gmake makefiles included (run in the same process) or is GNU
> make started for them it its own process?

For a start they would be called (own process), but its something where I
have no strong opinions.

Please (just to be sure), this proposal has nothing to do with the students
work, its simply because I saw a positive discussion on removing,
and spent a couple of hours looking at it. If there is a preference not to
remove I will simply forget it.

jan I.

> Regards,
> Andre
>> It has been roughly tested it, thanks to a clever utility from andre.
>> As discussed contains a lot of options, which need to be
>> considered in a makefile.
>> My suggestion is on
>> build.pl_versus_makefile<>
>> Please feel free to edit/comment on the page. I have reduced to options a
>> lot, and some of them might be in use.
>> thanks in advance for your comments.
> ------------------------------**------------------------------**---------
> To unsubscribe, e-mail: dev-unsubscribe@openoffice.**<>
> For additional commands, e-mail:

  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message