Re: [CinCVS] Build System enhancement (any helpers?)

2007-04-09 Thread Johannes Sixt
On Thursday 05 April 2007 17:41, Christian Thaeter wrote:
 I started to transform the recursive ('SUBDIRS') Makefile.am builds into
 'include' statements (see 'info automake' chapter 7.3). The idea behind
 this is to make rebuilds much faster and more sane and utilize a distcc
 cluster much better. The rationale about is, that a distcc build here
 will waste about 50% of its time in doing serialized subdir builds in
 the plugin folder and even minimal changes at the code will cause a time
 consuming full subdirs traversal.

The only directory that really needs some fixing is the plubins/ directory. 
I'd really appreciate some sort of fix there. I've done some work in this 
direction myself, by building the plugins from plugins/Makefile.am instead of 
from individual Makefile.ams. But there were some obstacles that I didn't 
take the time to clean out...

If you can come up with patchex that addresses the plugins directory, I'll 
gladly apply them.

Please avoid any exotic features (of automake) and don't expect everybody to 
have latest and hottest automake.

-- Hannes

___
Cinelerra mailing list
Cinelerra@skolelinux.no
https://init.linpro.no/mailman/skolelinux.no/listinfo/cinelerra


[CinCVS] Build System enhancement (any helpers?)

2007-04-05 Thread Christian Thaeter
I started to transform the recursive ('SUBDIRS') Makefile.am builds into
'include' statements (see 'info automake' chapter 7.3). The idea behind
this is to make rebuilds much faster and more sane and utilize a distcc
cluster much better. The rationale about is, that a distcc build here
will waste about 50% of its time in doing serialized subdir builds in
the plugin folder and even minimal changes at the code will cause a time
consuming full subdirs traversal.

You can view get the code from my 'automake_nosubdir' branch:
http://www.pipapo.org/gitweb?p=cinelerra/ct;a=shortlog;h=automake_nonsubdir

This is still work on progress I want to announce it early, maybe
someone wants to help me with that.

Some Notes:
 * the work is done on top of my 'cinelerra/ct' branch but I plan to
backport it to the SVN version when the other Developers agree. I think
this is moderate intrusive since it is more a mechanic transformation
than much coding effort (well still some work) and it won't introduce
incompatibilities/merge problems with upstream sice we use our own build
system anyway. The benefits should outweigth the little disribution in
merging this.
 * some manual (clean-something:) make targets are commented out, should
be fixed soemhow
 * I only did *works-for-me* efforts so far, that is:
  + buildinfo will be unconditionally recreated
  + works only --with-external-ffmpeg (I didnt decided yet if to keep
SUBDIRS for ffmpeg or also to turn it into a include)

 When someone wants to fix this issues, just go on and send me patches
they are of lower priority to me I would only work at last on them when
I am back (see below).

 * It generates one big fat Makefile (which is good in this case, only
one make instance which will have a broad insight over the whole project)
 * It builds all objects in $(top_builddir) if you don't do of-dir
builds then this might look strange, but should be no problem. When
anyone finds out how to build objects in subdirs beyond $(top_builddir)
I would be glad to integrate his patches (while I think this is not needed)

Whats left to do:
I just started to transform the themes and plugins will be next; guicast
isn't yet done. The guicast transformation is simple if someone want to
do it, just drop me a note. I will work the next days on the plugins
dir. If someone wants to (promise to) help in the plugins dir please
tell me ASAP then we can coodinate work (like I do all plungins starting
with letter 'a' or such).

There is a small synconization problem since I will be out of office for
about 1-2 weeks from saturday on, I don't know if I will be able to
connect to the internet, but I take my laptop with me an work little bit
on the code when time permits. I'll be reachable via email or on IRC
until tomorrow (friday) late evening (GMT). When you want to help on
this, either use git to keep your changes or just send me patches, but
please keep them back until I am back from my travel, else the chances
that I oversee some emails are high. Alternatively you can add
information about your patches on my wiki
(http://www.pipapo.org/pipawiki/Cinelerra/GitBranches) this will be
persistent and not be lost.

Christian

___
Cinelerra mailing list
Cinelerra@skolelinux.no
https://init.linpro.no/mailman/skolelinux.no/listinfo/cinelerra