comparison mx/mx_graal.py @ 16620:a4b7356f4a2b

Unless the current revision is tagged as a release, make the Graal version 0.(n+1)-dev, in order to differentiate between release and development versions.
author Chris Seaton <chris.seaton@oracle.com>
date Wed, 30 Jul 2014 11:34:10 +0200
parents 8cdb9ef96c01
children 202d86545bba
comparison
equal deleted inserted replaced
16619:2acc00d0322a 16620:a4b7356f4a2b
791 setMakeVar('INCLUDE_GRAAL', 'false') 791 setMakeVar('INCLUDE_GRAAL', 'false')
792 setMakeVar('ALT_OUTPUTDIR', join(_graal_home, 'build-nograal', mx.get_os()), env=env) 792 setMakeVar('ALT_OUTPUTDIR', join(_graal_home, 'build-nograal', mx.get_os()), env=env)
793 else: 793 else:
794 # extract latest release tag for graal 794 # extract latest release tag for graal
795 try: 795 try:
796 tags = [x.split(' ')[0] for x in subprocess.check_output(['hg', '-R', _graal_home, 'tags']).split('\n') if x.startswith("graal-")] 796 tags = [x.split() for x in subprocess.check_output(['hg', '-R', _graal_home, 'tags']).split('\n') if x.startswith("graal-")]
797 current_revision = subprocess.check_output(['hg', '-R', _graal_home, 'id', '-i']).strip()
797 except: 798 except:
798 # not a mercurial repository or hg commands are not available. 799 # not a mercurial repository or hg commands are not available.
799 tags = None 800 tags = None
800 801
801 if tags: 802 if tags and current_revision:
802 # extract the most recent tag 803 sorted_tags = sorted(tags, key=lambda e: [int(x) for x in e[0][len("graal-"):].split('.')], reverse=True)
803 tag = sorted(tags, key=lambda e: [int(x) for x in e[len("graal-"):].split('.')], reverse=True)[0] 804 most_recent_tag_name, most_recent_tag_revision = sorted_tags[0]
804 setMakeVar('USER_RELEASE_SUFFIX', tag) 805 most_recent_tag_version = most_recent_tag_name[len("graal-"):]
805 setMakeVar('GRAAL_VERSION', tag[len("graal-"):]) 806
807 if current_revision == most_recent_tag_revision:
808 version = most_recent_tag_version
809 else:
810 major, minor = map(int, most_recent_tag_version.split('.'))
811 version = str(major) + '.' + str(minor + 1) + '-dev'
812
813 setMakeVar('USER_RELEASE_SUFFIX', 'graal-' + version)
814 setMakeVar('GRAAL_VERSION', version)
806 else: 815 else:
807 version = 'unknown-{}-{}'.format(platform.node(), time.strftime('%Y-%m-%d_%H-%M-%S_%Z')) 816 version = 'unknown-{}-{}'.format(platform.node(), time.strftime('%Y-%m-%d_%H-%M-%S_%Z'))
808 setMakeVar('USER_RELEASE_SUFFIX', 'graal-' + version) 817 setMakeVar('USER_RELEASE_SUFFIX', 'graal-' + version)
809 setMakeVar('GRAAL_VERSION', version) 818 setMakeVar('GRAAL_VERSION', version)
810 setMakeVar('INCLUDE_GRAAL', 'true') 819 setMakeVar('INCLUDE_GRAAL', 'true')