New builds from the build-infra team
David Holmes
david.holmes at oracle.com
Wed Nov 7 19:41:00 PST 2012
On 8/11/2012 6:22 AM, Kelly O'Hair wrote:
> On Nov 7, 2012, at 6:16 AM, Anthony Petrov wrote:
>> 2. What is the ./build/linux-x86-normal-server-release directory, and why is it not ./build/linux-i586 ? What does 'normal' stand for? The same question about the 'server' part.
>>
>
> The configure allows for many variations on builds, and the basic variation is put into the directory name.
>
> I have been tempted to soft link linux-i586 to linux-x86-normal-server-release or whatever linux-x86-*name is generated
> (assuming only one exists), but it gets a little complicated.
A couple of comments on this. As Kelly says a "configuration" can be set
up to build a range of different, well, configurations, and the default
output name reflects what you have chosen (directly or implicitly).
The "normal" is in contrast to "embedded" (which of course is not
applicable to OpenJDK builds). When the conversion was first started the
embedded build support was in the open and so two JDK variants were
defined. Now that the embedded build support is in the closed repo we
still need two variants but people only using open repos can't see there
is any alternative to "normal".
The "server" part is important as it indicates what flavor(s) of hotspot
this configuration will build. By default (why?) only the server VM is
built - whereas in the old build both client and server are built. So
you need to add --with-jvm-variant=client,server if you want both.
The "release" indicates a product build as opposed to fastdebug, for
example.
Personally I never let configure define or name the output directory. My
preferred approach is (via scripts) to do:
mkdir <output-dir>
cd <output-dir>
bash <path-to-configure> configure.sh <options>
There may also be a configure option to name the output directory
explicitly.
>> 3. I get the following error and the build stops:
This might not be relevant but you need to be careful if you are
building 32-bit on an x64 machine. If you do that you need to pass
--with-target-bits=32. Otherwise the default build on x64 is 64-bit.
David
------
More information about the build-infra-dev
mailing list