RFR (S): 7172922: export_ makefile targets do not work unless all supported variants are built
Christian Thalinger
christian.thalinger at oracle.com
Mon Apr 15 12:30:33 PDT 2013
On Apr 15, 2013, at 10:52 AM, Vladimir Kozlov <vladimir.kozlov at oracle.com> wrote:
> Christian,
>
> First, you should start using webrev versions so we can follow your changes during reviews.
I should. Where is our new review system? ;-)
>
> Changes are fine. I wish there was a way to avoid duplicated code (functions in Makefiles?).
That would be nice but the problem as I see it is the way how we are doing this. We add all the targets to EXPORT_LIST and then:
generic_export: $(EXPORT_LIST)
So all the targets in EXPORT_LIST must exists. If not, you get these mysterious make failures saying it can't find a target.
Again, I'm not a make expert...
-- Chris
>
> Thanks,
> Vladimir
>
> On 4/14/13 10:17 PM, Christian Thalinger wrote:
>>
>> On Apr 14, 2013, at 10:14 PM, David Holmes <david.holmes at oracle.com> wrote:
>>
>>> On 15/04/2013 2:56 PM, Christian Thalinger wrote:
>>>>
>>>> On Apr 14, 2013, at 9:54 PM, David Holmes <david.holmes at oracle.com> wrote:
>>>>
>>>>> On 15/04/2013 2:36 PM, Christian Thalinger wrote:
>>>>>>
>>>>>> On Apr 14, 2013, at 4:39 PM, David Holmes <david.holmes at oracle.com> wrote:
>>>>>>
>>>>>>> Hi Chris,
>>>>>>>
>>>>>>> On 14/04/2013 2:03 PM, Christian Thalinger wrote:
>>>>>>>>
>>>>>>>> On Apr 12, 2013, at 5:10 PM, David Holmes <david.holmes at oracle.com> wrote:
>>>>>>>>
>>>>>>>>> Hi Chris,
>>>>>>>>>
>>>>>>>>> On 13/04/2013 4:58 AM, Christian Thalinger wrote:
>>>>>>>>>> http://cr.openjdk.java.net/~twisti/7172922
>>>>>>>>>>
>>>>>>>>>> 7172922: export_ makefile targets do not work unless all supported variants are built
>>>>>>>>>> Reviewed-by:
>>>>>>>>>>
>>>>>>>>>> GEN_DIR can be overwritten by other configurations if multiple JVM_VARIANT_*s are defined. The fix is to use the *_BASE_DIRs directly to install the correct files.
>>>>>>>>>>
>>>>>>>>>> make/Makefile
>>>>>>>>>
>>>>>>>>> This looks like a simple temporary solution - thanks.
>>>>>>>>
>>>>>>>> Yes, it's not perfect but good enough for now.
>>>>>>>>
>>>>>>>>>
>>>>>>>>> More long term I hope we should be able to generate the set of targets based on the selected JVM_VARIANTS, without needing all those duplicated blocks.
>>>>>>>>>
>>>>>>>>> One query with the current situation: why doesn't MISC_DIR cause us a problem? It would seem to have the same issue as GEN_DIR. ???
>>>>>>>>
>>>>>>>> MISC_DIR has the same problem but I didn't want to mess with Windows.
>>>>>>>>
>>>>>>>> How about this one?
>>>>>>>>
>>>>>>>> http://cr.openjdk.java.net/~twisti/7172922
>>>>>>>
>>>>>>> I like the addition simplification of getting rid of BASE_DIR and MISC_DIR.
>>>>>>>
>>>>>>> However I think you still need conditionals for Windows otherwise this:
>>>>>>>
>>>>>>> 315 $(EXPORT_JRE_BIN_DIR)/%.diz: $(C2_DIR)/%.diz
>>>>>>> 316 $(install-file)
>>>>>>>
>>>>>>> for example, is going to be executed for all platforms and dump the diz files into the bin directory.
>>>>>>
>>>>>> Only if a $(EXPORT_JRE_BIN_DIR)/*.diz file is on the EXPORT_LIST.
>>>>>
>>>>> Oops! My bad.
>>>>>
>>>>> I still think I prefer seeing platform specific targets in platform specific conditionals, rather than using comments.
>>>>
>>>> I don't have a strong opinion about this. Will add the ifdefs tomorrow.
>>>
>>> Don't bother unless someone else feels strongly about it. (I don't want to have to re-review :) )
>>
>> Even better :-) If there are no objections tomorrow I will push it. Thanks for reviewing.
>>
>> -- Chris
>>
>>>
>>> David
>>> -----
>>>
>>>> -- Chris
>>>>
>>>>> But if we can macrofy this as the next step (different CR) then that can be handled once within the macro.
>>>>>
>>>>> Thanks,
>>>>> David
>>>>>
>>>>>> -- Chris
>>>>>>
>>>>>>>
>>>>>>> David
>>>>>>> -----
>>>>>>>
>>>>>>>> -- Chris
>>>>>>>>
>>>>>>>>>
>>>>>>>>> Thanks,
>>>>>>>>> David
>>>>>>>>>
>>>>>>>>
>>>>>>
>>>>
>>
More information about the hotspot-dev
mailing list