[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: using soot for a sablevm project
Hi Chris...
If your project does not require modifying existing code in either Soot
or SableVM, I would recommend keeping it in a separate repository,
separate from both Soot and SableVM. It should only go into the Soot or
SableVM repository if you think that some day, it will be useful to
users of Soot or SableVM in general. By making it part of Soot or
SableVM, you are implicitly agreeing to maintain it for Soot or SableVM
users in the future. We already have a hard enough time with code in
Soot whose authors have disappeared, and nobody knows how it works (but
it's too valuable to Soot users to just rip out). If you need minor
modifications to Soot, but the bulk of your code can be separate from
those modifications, then you can make those minor modifications in the
Soot repository, and keep the rest of your code separate. Again, I don't
know your exact intentions for the future of this code, but I would only
put it into the Soot repository if you intend to one day make it an
integral part of Soot and maintain it as such.
If you want your own private repository, it's very easy to get one on
the lab machines. Simply set your CVSROOT environment variable to
/home/research/ccl/sable/CVS, go to an empty directory, type
"cvs import my_repository_name VENDOR RELEASE", then go to some other
directory and type "cvs co my_repository_name". This creates a directory
called my_repository_name in which you can use CVS to maintain your
project.
Ondrej
On Mon, Nov 03, 2003 at 01:29:47PM -0500, Chris Pickett wrote:
> Hi.
>
> I have a little bit of code that extends Soot to transform some classes
> (in the Java sense, no actual modification of Soot source files yet --
> all I do is extend BodyTransformer and add my own main method that adds
> my phase and calls Soot's main method). It might grow a little in the
> future to include some other analyses, but I'm not sure if I will ever
> actually modify the core Soot files. Then again maybe I already am
> modifying Soot because my code calls it and is called by it.
>
> This is part of a speculative multithreading (spmt) project I'm doing in
> SableVM (I insert dummy method calls that are recognized and transformed
> by SableVM at method preparation time). Etienne (the SableVM
> maintainer) says it's better if I put Soot-related stuff in the Soot
> repository . . . what do you guys think? Should I make a copy of the
> trunk in soot/branches/soot-2-spmt and create my own spmt directory in
> that branch? Or put a license statement about Soot in my SableVM
> project and keep it all there? By the way, SableVM is also under the LGPL.
>
> Right now, it seems easiest for me if I just have one repository to
> worry about, but I will do this if it's the best way. I'm just a Soot
> user at the moment, but it seems that this also means developer, hence
> the confusion / hesitation / questions.
>
> Cheers,
> Chris
>