How to check out the openjdk source code from the mercurial repositories
kelly.ohair at oracle.com
Fri Mar 11 08:48:29 PST 2011
On Mar 11, 2011, at 4:46 AM, Johan Walles wrote:
> 2011-03-11 01:57, Dr Andrew John Hughes skrev:
>> On 06:40 Fri 11 Mar , David Holmes wrote:
>>> Fredrik Öhrström said the following on 03/10/11 20:22:
>>>> I think it is important that a recent stock mercurial install
>>>> can check out the full openjdk with a single clone
>>>> I.e. you should not have to install special extensions just
>>>> to get the source code.
>>> That's a bit of a leading/loaded question ;-)
>>>> There are several ways this can be solved. But before
>>>> we dive into discussions on the possible alternatives,
>>>> I would like to see who else think it is a good idea.
>>> Stepping up a level, an initial download of openjdk need not involve
>>> using mercurial at all. You can simply download a stable snapshot as a
>>> tar file;
>> This makes much more sense as a starting point for new users over having
>> to handle Mercurial and checkouts. It works fine if you just want to _use_
>> the latest and greatest, not hack on it.
> I don't really follow you when you say that people would "want to _use_
> the latest and greatest [source code], not hack on it".
> What would people do with the source code if not hack on it?
Historically, there have been quite a few 'just download and [try to] build' use scenarios,
I'd say the great majority, maybe 80% or more.
I don't think this is unusual, how many people download and build open source projects
and never contribute anything to them?
> If they *do* want to hack on it, I know I'd want to have it under version control.
> Regards /Johan
>>> or download an install script that will do whatever is
>>> necessary behind the scenes to get a complete openjdk.
>> I don't know how that would work. I guess IcedTea comes close to this idea
>> in that it detects the needed settings for the build, rather than them all
>> having to be passed as make variables.
>>> Personally I'd
>>> like to see that include the basic build tools as well - in which case I
>>> don't care about "special extensions" as I just get a working toolkit.
>> What do you mean by this? Can you give an example?
>>> think in the scheme of things the process of getting the source code for
>>> the openjdk is the easiest part of the process. Depending on your
>>> platform setting up mercurial so that you could do that "single clone
>>> command" may be a far greater problem. And setting up the build
>>> environment an order of magnitude greater again.
>>>> Clearly, comments from people outside of Oracle
>>>> are the most important!
>>> Clearly. :)
>> Well as a person outside Oracle, I'd agree that getting a checkout is the
>> least of my problems. Configuring builds and fixing bugs is a much greater
>> problem than having to write a few extra 'hg clone' commands to get a full
>> checkout. It's just a matter of using a for loop or cobbling together a
>> shell script as Kelly has done. Trivial stuff for anyone planning to
>> build or hack on OpenJDK.
>>>> (When the source is checked out, then there can be
>>>> mercurial extensions in the checked out source code
>>>> for example jcheck that assists in sanity tests before
>>>> committing. So this does not limit the actual extensions
>>>> used later. Only that we should not "improve" on the versioning
>>>> part of mercurial.)
>> jcheck is server-side. It needs to be released as Free Software not
>> so we can all run it but so we can see what the heck it's doing and
>> fix issues with it.
More information about the build-dev