New build system problems

David Holmes david.holmes at oracle.com
Mon Feb 25 00:14:45 UTC 2013


Hi Martin,

  257   if test "x$OPENJDK_TARGET_OS" != xmacosx; then
  258     # Do not probe for cc on MacOSX.
  259     COMPILER_CHECK_LIST="cc $COMPILER_CHECK_LIST"
  260   fi

This is either testing the wrong os - should be Solaris - or using the 
wrong compiler cc->cl

The configure way of doing things was intended to be "here's a list of 
potential compilers try and find one". But the reality is that each 
platform really only wants to use one specific compiler:
- linux -> gcc
- solaris -> cc
- windows -> cl

Seems to me we should stop pretending there is some generality here and 
just hardwire these selections, allowing $CC/$CXX to override

PS. No executable files in the repositories hence non-executable 
configure script.

David
-----

On 24/02/2013 6:05 AM, Martin Buchholz wrote:
> Hi Erik, Tim, Kelly
>
> Here's a proposed fix for you to review:
>
> http://cr.openjdk.java.net/~martin/webrevs/openjdk8/COMPILER_CHECK_LIST/
>
> Martin
>
> On Fri, Jan 25, 2013 at 3:51 PM, Martin Buchholz <martinrb at google.com>wrote:
>
>> I was trying out the shiny new build system.
>>
>> Problem: configure is not executable - must run bash ./configure
>> It's traditional for configure scripts to be executable.
>>
>> Problem: Your life is hell if you have a non-compiler "cl" command on your
>> PATH, even on Linux.
>>
>> checking for cl... /usr/bin/cl
>> configure: Resolving CC (as /usr/bin/cl) failed, using /usr/bin/cl
>> directly.
>>
>> with subsequent failure to compile.
>>
>> Even if you specify the compiler explicitly, it doesn't help:
>>
>> CC=/usr/bin/gcc CXX=/usr/bin/g++ bash ./configure
>>
>> Of course, one can work around this by creating a "tools dir", but
>> excising the unloved cl from the configure script is tempting and effective.
>>



More information about the build-dev mailing list