Fwd: Testing OpenJDK under Windows 7 64, problem with Makefile

Erik Joelsson erik.joelsson at oracle.com
Mon Mar 4 04:52:35 PST 2013


Contributions are of course always appreciated, but the model for 
solving this in the new build is different. We have a utility, 
fixpath.exe, created by configure, which we prepend to all the windows 
executables that make runs. It rewrites all arguments containing 
/cygdrive/ paths to driveletter-colon paths before running the windows 
executable. This way we don't need to worry about converting paths in 
make, we just use unix style all over. I haven't looked at the test 
targets yet, so I don't know the details of what goes wrong there. 
Getting to look at your patch would give a better idea of what the 
problems are.

/Erik

On 2013-03-04 13:39, Daniel López wrote:
> Well, I have been able to modify the Makefile so it does not depend on make
> hanlding the ':', by transforming paths into linux style paths inside Make.
> Then the problem is that Java itself seems not to like the Cygwin paths
> (/cygdrive/c/...), maybe because it thinks it's running in windows?, so the
> paths passed to Java have to be properly formatted as well.
>
> So I have a working version of the Makefile, in Cygwin, and the question
> would be if we want to investigate further how to get make to work with
> that version or use the modified make-independent version. And in the
> latter case, I can provide I diff of my changes so they can be revised and
> tested. They are fairly simple changes but... :).
>
> S!
> D.
>
>
> 2013/3/4 Erik Joelsson<erik.joelsson at oracle.com>
>
>> I see. Yes, this is the new build. The test targets haven't been addressed
>> yet though so the problem with : probably persists there. You might need to
>> build make with some special option to enable the : feature. I have never
>> done this myself so I don't know the details.
>>
>> /Erik
>>
>>
>> On 2013-03-04 12:18, Daniel López wrote:
>>
>>> I just tried downloading and building myself make 3.80 (as Mozilla guys
>>> suggest) or the newest 3.82 and none of them is able to run the Makefile
>>> unmodified :(.
>>>
>>> S!
>>> D.
>>>
>>>
>>> 2013/3/4 Daniel López<d.lopez.j at gmail.com>
>>>
>>>   This happens trying to test Java 8 following the instructions described
>>>> in
>>>> http://java.net/projects/**adoptopenjdk/pages/**BuildWindows<http://java.net/projects/adoptopenjdk/pages/BuildWindows>that I thought
>>>> were related to the new system and then trying to test the installation
>>>> using the instructions provided here
>>>> http://java.net/projects/**adoptopenjdk/pages/**InstallJtreg<http://java.net/projects/adoptopenjdk/pages/InstallJtreg>
>>>> .
>>>>
>>>> Is this the old system of testing the jdk? The building itself succeeds,
>>>> it's the test Makefile that gives me troubles (OpenJDK/jdk8_tl/jdk/test)
>>>> to
>>>> be precise.
>>>> Nevertheless, I'll try to build the make from the sources and see if that
>>>> also fixes it.
>>>>
>>>> Thanks,
>>>> D.
>>>>
>>>>
>>>> 2013/3/4 Erik Joelsson<erik.joelsson at oracle.**com<erik.joelsson at oracle.com>
>>>>   I'm assuming this is concerning jdk7 (and the old build system) so
>>>>> moving
>>>>> to the build-dev list. This is a known issue in the cygwin version of
>>>>> make.
>>>>> It can be addressed by building it yourself from source, enabling the
>>>>> feature to accept ':' in paths. See the build readme for more details.
>>>>>
>>>>> http://hg.openjdk.java.net/****jdk7/build/raw-file/tip/**<http://hg.openjdk.java.net/**jdk7/build/raw-file/tip/**>
>>>>> README-builds.html#gmake<http:**//hg.openjdk.java.net/jdk7/**
>>>>> build/raw-file/tip/README-**builds.html#gmake<http://hg.openjdk.java.net/jdk7/build/raw-file/tip/README-builds.html#gmake>
>>>>>
>>>>> (In the new build system in jdk8, this is solved differently and should
>>>>> not be an issue.)
>>>>>
>>>>> /Erik
>>>>>
>>>>>
>>>>> On 2013-02-27 13:05, Daniel López wrote:
>>>>>
>>>>>   Hi there,
>>>>>> I've been redirected here from the Adopt OpenJDK programme, as the
>>>>>> investigation while trying to "adopt" the OpenJDK build using Windows
>>>>>> has
>>>>>> led me to some issues involving the build scripts.
>>>>>> Back to the point, I was able to successfully build the OpenJDK
>>>>>> following
>>>>>> the instructions from the programme, but when it was time to verify the
>>>>>> build, the make did not succeed. After some research, I found out that
>>>>>> one
>>>>>> of the issues is that, under Cygwin, the JDK does not like being passed
>>>>>> the
>>>>>> Unix equivalent paths, so you need the DOS adapted ones, but the
>>>>>> Makefile
>>>>>> is unable to work with the DOS adapted ones (due to the presence of ':'
>>>>>> in
>>>>>> the paths that is interpreted as path separators). The Makefile is
>>>>>> transforming that paths and use them in several places (using cygpath
>>>>>> -m
>>>>>> -s
>>>>>> ) but then it fails with a "multiple targets" error due to ':' being
>>>>>> used
>>>>>> in some paths.
>>>>>>
>>>>>> The solution I found was to convert the paths that are used internally
>>>>>> inside the Makefile using 'cygpath -u' and use the DOS paths when they
>>>>>> are
>>>>>> passed to call the jtreg tool (a Java call). It surely needs some
>>>>>> testing
>>>>>> and MK might have a similar problem (I have not tested it, I don't have
>>>>>> it
>>>>>> installed) but just I wanted to let you know about the issue, in case
>>>>>> someone else has the same troubles.
>>>>>>
>>>>>> How would you like to proceed with it? Google did not produce any bug
>>>>>> report that covered that and I'm quite new to the Adop OpenJDK
>>>>>> programme
>>>>>> and the whole OpenJDK contribution (the documentation is not too clear
>>>>>> as
>>>>>> it assumes a bug is already created and the bugDatabase page is a WIP).
>>>>>>
>>>>>> Cheers!
>>>>>> D.
>>>>>>
>>>>>> To follow the whole discussion, the topic at the Adopt OpenJDK google
>>>>>> group
>>>>>> should be here:
>>>>>> https://groups.google.com/****forum/?hl=es&fromgroups=#!**<https://groups.google.com/**forum/?hl=es&fromgroups=#!**>
>>>>>> topic/adopt-openjdk/****qRdMlWFgrhc<https://groups.**
>>>>>> google.com/forum/?hl=es&**fromgroups=#!topic/adopt-**
>>>>>> openjdk/qRdMlWFgrhc<https://groups.google.com/forum/?hl=es&fromgroups=#!topic/adopt-openjdk/qRdMlWFgrhc>
>>>>>>



More information about the build-infra-dev mailing list