harmony-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Egor Pasko <egor.pa...@gmail.com>
Subject Re: [drlvm][PATCH/RFC] GNU Make-based build system for DRLVM -- call for help
Date Fri, 17 Aug 2007 07:12:47 GMT
On the 0x334 day of Apache Harmony Salikh Zakirov wrote:
> > Xiao-Feng Li wrote:
> >> I highly support to have a Makefile based build system. Thanks for the
> >> experiments! Only the nice "-j n" can make it a worth try.
> 
> Salikh Zakirov replied:
> > Thanks, I will see if I can it make it "more cross-platform", and then
> > file a JIRA with a patch.
> 
> So, I went ahead and cleaned makefile a little bit, squashing a couple of bugs
> on the way, added Apache license boilerplates and uploaded the patch to
> HARMONY-4640 '[drlvm][build] Makefiles for building native components of DRLVM'
> 
> The build works as a overlay on top of existing build system, as it currently uses
> apr an other 3rd party libraries build by the ant build system. It deploys the
> resulting binaries to the same deploy directories, in order to support quick
> recompilation cycle if only native files were changed. This dramatically increases
> effectiveness of development work if frequent recompilation are needed, especially
> in the case of moved source files, which requires 'clean' step with the current
> build system (~6-7 minutes on my machine), but makefiles allow for an incremental
> recompilation (typicaly ~10-20 seconds).
> 
> I've tried makefiles only on Linux/x86, since that is what I have.
> 
> The functionality for the cross-platform configuration is designed in the makefiles,
> however, the configuration itself is missing, and I need help from volunteers to bring
> this build system to a fully configured state.
> 
> To make the experimentation and contribution to the build system development easier,
> I've set up a git mirror of DRLVM repository on repo.or.cz. Use following commands to
check out the copy
> 
>      $ git clone git://repo.or.cz/drlvm.git
>      $ cd drlvm
>      $ git checkout -b mob origin/mob
> 
> The branch 'master' is a pure mirror of SVN, and branch 'mob' contains the patch with
the makefiles.
> In order to facilitate easy integration of many patches, anonymous write access without
password
> is enabled with mob account [1]. The following command can be used to push patches to
the repository
> 
>     $ git push ssh://mob@repo.or.cz/srv/git/drlvm.git mob
> 
> The only writable branch is 'mob'. Using this anonymously writable branch, anyone (including
non-committers)
> can contribute patches, and all modifications will be collected in one place without
having to mail or
> upload multitude of patches. It would be easier for me to review patches in this way
as well.
> 
> So, if you are interested in having a more efficient and convenient build system for
DRLVM, 
> please help in porting it to more platforms.

Salikh, GIT mirror of DRLVM is cool (!!!) (I would be glad to use it
instead of using my own mirror as of today), but contribution back to
GIT does not follow our process and each patch will have to be
attached back to JIRA thus requiring duplicate of work, which is not
very usable.

I am thinking of a more convenient way to use GIT: run a JIRA crawler
to collect all patches in JIRA (allowed to include in our sources) and
apply them to the mirror (add a patch to the experimental branch
automatically if the patch does not break a set of predefined
tests). How is that?

And BIG THANKS for working on the build system. I am kinda deadly
annoyed with current speed. With make we could cook parallel builds
upto distcc.

-- 
Egor Pasko


Mime
View raw message