RFR: 8012564: The SOURCE value in release file of JDK 8 doesn't contain valid changesets for some OS since b74
Kelly O'Hair
kellyohair at gmail.com
Thu Jun 20 16:57:53 UTC 2013
On Jun 20, 2013, at 5:27 AM, Erik Joelsson wrote:
>
>
> On 2013-06-20 14:14, David Holmes wrote:
>> Hi Erik,
>>
>> On 20/06/2013 6:07 PM, Erik Joelsson wrote:
>>> Simple patch removing unnecessary check for existence of mercurial for
>>> getting the hgtips for the release file. This check prevented the backup
>>> solution of using the .hgtip files from working when building from
>>> source bundles.
>>>
>>> http://cr.openjdk.java.net/~erikj/8012564/webrev.root.01/
>>
>> The change seems okay, but I'm unclear from here:
>>
>> define GetSourceTips
>> $(CD) $(SRC_ROOT) ; \
>> for i in $(REPO_LIST) IGNORE ; do \
>> if [ "$${i}" = "IGNORE" ] ; then \
>> continue; \
>> elif [ -d $${i}/$(HG_DIRECTORY) -a "$(HG_VERSION)" != "" ] ; then \
>> $(PRINTF) " %s:%s" \
>> "$${i}" `$(HG) tip --repository $${i} --template '{node|short}\n'` ; \
>> elif [ -f $${i}/$(HGTIP_FILENAME) ] ; then \
>> $(PRINTF) " %s:%s" \
>> "$${i}" `$(CAT) $${i}/$(HGTIP_FILENAME)` ; \
>> fi; \
>> done >> $@
>> $(PRINTF) "\n" >> $@
>> endef
>>
>>
>> what happens if hg does not exist? Will HG_VERSION be empty in that case so we branch to the HGTIP_FILENAME section?
>>
> Yes, that will make HG_VERSION empty. This logic was copied pretty straight from the old build, just renaming some variables to fit with the new build. I think the idea is that either you got the source using mercurial, in which case it should be available, or you got it through a source bundle, in which case there should be hgtip files. If there are no hgtip files, then the shell logic for finding the repos won't find any, so nothing will happpen.
>
> /Erik
>
As I recall... hg might not be in the path, hg might not work, the .hg/ directories might be missing (RE builds).
If HG_VERSION is empty, and the .hgtip files are not there, then the "release" file in the jdk install image will have SOURCES="" or be empty.
So when the RE source bundles are created, it's important that while hg and the .hg/ directories are around, to generate the .hgtip files before it discards the .hg/ directories.
-kto
P.S. I miss hg, svn is painful. :^(
More information about the build-dev
mailing list