| | 457 | def getBoostVersion(): |
|---|
| | 458 | boost_ver_re = re.compile(r'#define\s+BOOST_LIB_VERSION\s+"(.+)"') |
|---|
| | 459 | |
|---|
| | 460 | info = ('0', '0', '0') |
|---|
| | 461 | if os.environ.has_key('BOOST_INCLUDES'): |
|---|
| | 462 | ver_file = open(os.path.join(os.environ['BOOST_INCLUDES'], 'boost', |
|---|
| | 463 | 'version.hpp')) |
|---|
| | 464 | lines = ver_file.readlines() |
|---|
| | 465 | ver_file.close() |
|---|
| | 466 | for l in lines: |
|---|
| | 467 | match = boost_ver_re.search(l) |
|---|
| | 468 | if match is not None: |
|---|
| | 469 | ver_info = match.group(1).split('_') |
|---|
| | 470 | info = tuple(ver_info) |
|---|
| | 471 | break |
|---|
| | 472 | |
|---|
| | 473 | return info |
|---|
| | 474 | |
|---|
| | 475 | def buildVersion(inputFile, exps): |
|---|
| | 476 | ver_file = open(inputFile) |
|---|
| | 477 | lines = ver_file.readlines() |
|---|
| | 478 | ver_file.close() |
|---|
| | 479 | |
|---|
| | 480 | nums = [0 for e in exps] |
|---|
| | 481 | |
|---|
| | 482 | for l in lines: |
|---|
| | 483 | i = 0 |
|---|
| | 484 | while i < len(exps): |
|---|
| | 485 | match = exps[i].search(l) |
|---|
| | 486 | if match is not None: |
|---|
| | 487 | nums[i] = match.group(1) |
|---|
| | 488 | break |
|---|
| | 489 | i = i + 1 |
|---|
| | 490 | |
|---|
| | 491 | return tuple(nums) |
|---|
| | 492 | |
|---|
| | 493 | def getCppDOMVersion(): |
|---|
| | 494 | exps = [ |
|---|
| | 495 | re.compile(r'#define\s+CPPDOM_VERSION_MAJOR\s+(\d+)'), |
|---|
| | 496 | re.compile(r'#define\s+CPPDOM_VERSION_MINOR\s+(\d+)'), |
|---|
| | 497 | re.compile(r'#define\s+CPPDOM_VERSION_PATCH\s+(\d+)') |
|---|
| | 498 | ] |
|---|
| | 499 | |
|---|
| | 500 | info = (0, 0, 0) |
|---|
| | 501 | if os.environ.has_key('CPPDOM_INCLUDES'): |
|---|
| | 502 | info = buildVersion(os.path.join(os.environ['CPPDOM_INCLUDES'], 'cppdom', |
|---|
| | 503 | 'version.h'), |
|---|
| | 504 | exps) |
|---|
| | 505 | |
|---|
| | 506 | return info |
|---|
| | 507 | |
|---|
| | 508 | def getGMTLVersion(): |
|---|
| | 509 | exps = [ |
|---|
| | 510 | re.compile(r'#define\s+GMTL_VERSION_MAJOR\s+(\d+)'), |
|---|
| | 511 | re.compile(r'#define\s+GMTL_VERSION_MINOR\s+(\d+)'), |
|---|
| | 512 | re.compile(r'#define\s+GMTL_VERSION_PATCH\s+(\d+)') |
|---|
| | 513 | ] |
|---|
| | 514 | |
|---|
| | 515 | nums = [0, 0, 0] |
|---|
| | 516 | if os.environ.has_key('GMTL_INCLUDES'): |
|---|
| | 517 | info = buildVersion(os.path.join(os.environ['GMTL_INCLUDES'], 'gmtl', |
|---|
| | 518 | 'Version.h'), |
|---|
| | 519 | exps) |
|---|
| | 520 | |
|---|
| | 521 | return info |
|---|
| | 522 | |
|---|
| | 561 | def getVersion(self, joinStr, versionInfo = None): |
|---|
| | 562 | if versionInfo is None: |
|---|
| | 563 | (version, major, minor, patch, build) = self.__getVersionInfo() |
|---|
| | 564 | else: |
|---|
| | 565 | (version, major, minor, patch, build) = versionInfo |
|---|
| | 566 | return '%d%s%d%s%d' % (major, joinStr, minor, joinStr, patch) |
|---|
| | 567 | |
|---|
| 496 | | (version, major, minor, patch, build) = self.__getVersionInfo() |
|---|
| 497 | | os.environ[self.version_env_var] = '%d_%d_%d' % (major, minor, patch) |
|---|
| 498 | | os.environ[self.version_env_var_dot] = '%d.%d.%d' % \ |
|---|
| 499 | | (major, minor, patch) |
|---|
| | 569 | vi = self.__getVersionInfo() |
|---|
| | 570 | os.environ[self.version_env_var] = self.getVersion('_', vi) |
|---|
| | 571 | os.environ[self.version_env_var_dot] = self.getVersion('.', vi) |
|---|
| 614 | | mods.append(JugglerModule(r'modules\vapor', vcDir, 'VPR', 'VPR_VERSION', |
|---|
| 615 | | vpr_subst_vars, |
|---|
| 616 | | [(r'vpr\vprParam.h',), ('vpr.fpc',), |
|---|
| 617 | | (r'vpr\version.rc', |
|---|
| 618 | | os.path.join(gJugglerDir, 'version.rc.in'))])) |
|---|
| | 685 | vpr_subst_vars['BOOST_ROOT'] = r'${fpc_file_cwd}\..\..' |
|---|
| | 686 | vpr_subst_vars['BOOST_VERSION_DOT'] = '.'.join(getBoostVersion()) |
|---|
| | 687 | vpr_subst_vars['BOOST_INCLUDES'] = r'/I${prefix}\include' |
|---|
| | 688 | vpr_subst_vars['BOOST_LDFLAGS'] = r'/libpath:${prefix}\lib' |
|---|
| | 689 | vpr_subst_vars['CPPDOM_VERSION'] = '.'.join(getCppDOMVersion()) |
|---|
| | 690 | vpr_module = JugglerModule(r'modules\vapor', vcDir, 'VPR', 'VPR_VERSION', |
|---|
| | 691 | vpr_subst_vars, |
|---|
| | 692 | [(r'vpr\vprParam.h',), ('vpr.fpc',), |
|---|
| | 693 | ('boost.fpc',), ('boost_filesystem.fpc',), |
|---|
| | 694 | ('boost_signals.fpc',), |
|---|
| | 695 | (r'vpr\version.rc', |
|---|
| | 696 | os.path.join(gJugglerDir, 'version.rc.in'))]) |
|---|
| | 697 | mods.append(vpr_module) |
|---|
| 669 | | mods.append(JugglerModule(r'modules\tweek', vcDir, 'Tweek_CXX', |
|---|
| 670 | | 'TWEEK_VERSION', tweek_subst_vars, |
|---|
| 671 | | [(r'tweek\tweekParam.h',), ('tweek.fpc',), |
|---|
| 672 | | ('tweek-java.fpc',), ('tweek-python.fpc',), |
|---|
| 673 | | (r'tweek\version.rc', |
|---|
| 674 | | os.path.join(gJugglerDir, 'version.rc.in'))])) |
|---|
| | 749 | tweek_module = JugglerModule(r'modules\tweek', vcDir, 'Tweek_CXX', |
|---|
| | 750 | 'TWEEK_VERSION', tweek_subst_vars, |
|---|
| | 751 | [(r'tweek\tweekParam.h',), ('tweek.fpc',), |
|---|
| | 752 | ('tweek-java.fpc',), ('tweek-python.fpc',), |
|---|
| | 753 | (r'tweek\version.rc', |
|---|
| | 754 | os.path.join(gJugglerDir, 'version.rc.in'))]) |
|---|
| | 755 | mods.append(tweek_module) |
|---|
| 688 | | mods.append(JugglerModule(r'modules\jackal', vcDir, 'JCCL', 'JCCL_VERSION', |
|---|
| 689 | | jccl_subst_vars, |
|---|
| 690 | | [(r'jccl\jcclParam.h', |
|---|
| 691 | | os.path.join(gJugglerDir, |
|---|
| 692 | | r'modules\jackal\common\jccl\jcclParam.h.in')), |
|---|
| 693 | | ('jccl.fpc',), |
|---|
| 694 | | (r'jccl\version.rc', |
|---|
| 695 | | os.path.join(gJugglerDir, 'version.rc.in')) |
|---|
| 696 | | ])) |
|---|
| | 768 | jccl_subst_vars['VPR_VERSION'] = vpr_module.getVersion('.') |
|---|
| | 769 | jccl_module = JugglerModule(r'modules\jackal', vcDir, 'JCCL', 'JCCL_VERSION', |
|---|
| | 770 | jccl_subst_vars, |
|---|
| | 771 | [(r'jccl\jcclParam.h', |
|---|
| | 772 | os.path.join(gJugglerDir, |
|---|
| | 773 | r'modules\jackal\common\jccl\jcclParam.h.in')), |
|---|
| | 774 | ('jccl.fpc',), |
|---|
| | 775 | (r'jccl\version.rc', |
|---|
| | 776 | os.path.join(gJugglerDir, 'version.rc.in')) |
|---|
| | 777 | ]) |
|---|
| | 778 | mods.append(jccl_module) |
|---|
| 703 | | mods.append(JugglerModule(r'modules\sonix', vcDir, 'Sonix', 'SNX_VERSION', |
|---|
| 704 | | snx_subst_vars, |
|---|
| 705 | | [(r'snx\snxParam.h',), ('sonix.fpc',), |
|---|
| 706 | | (r'snx\version.rc', |
|---|
| 707 | | os.path.join(gJugglerDir, 'version.rc.in'))])) |
|---|
| | 784 | snx_subst_vars['VPR_VERSION'] = vpr_module.getVersion('.') |
|---|
| | 785 | snx_subst_vars['GMTL_VERSION'] = '.'.join(getGMTLVersion()) |
|---|
| | 786 | snx_module = JugglerModule(r'modules\sonix', vcDir, 'Sonix', 'SNX_VERSION', |
|---|
| | 787 | snx_subst_vars, |
|---|
| | 788 | [(r'snx\snxParam.h',), ('sonix.fpc',), |
|---|
| | 789 | (r'snx\version.rc', |
|---|
| | 790 | os.path.join(gJugglerDir, 'version.rc.in'))]) |
|---|
| | 791 | mods.append(snx_module) |
|---|
| 716 | | mods.append(JugglerModule(r'modules\gadgeteer', vcDir, 'Gadgeteer', |
|---|
| 717 | | 'GADGET_VERSION', gadget_subst_vars, |
|---|
| 718 | | [(r'gadget\gadgetParam.h',), ('gadgeteer.fpc',), |
|---|
| 719 | | (r'gadget\version.rc', |
|---|
| 720 | | os.path.join(gJugglerDir, 'version.rc.in'))])) |
|---|
| | 799 | gadget_subst_vars['VPR_VERSION'] = jccl_subst_vars['VPR_VERSION'] |
|---|
| | 800 | gadget_subst_vars['JCCL_VERSION'] = jccl_module.getVersion('.') |
|---|
| | 801 | gadget_subst_vars['GMTL_VERSION'] = snx_subst_vars['GMTL_VERSION'] |
|---|
| | 802 | gadget_module = JugglerModule(r'modules\gadgeteer', vcDir, 'Gadgeteer', |
|---|
| | 803 | 'GADGET_VERSION', gadget_subst_vars, |
|---|
| | 804 | [(r'gadget\gadgetParam.h',), |
|---|
| | 805 | ('gadgeteer.fpc',), |
|---|
| | 806 | (r'gadget\version.rc', |
|---|
| | 807 | os.path.join(gJugglerDir, 'version.rc.in')) |
|---|
| | 808 | ]) |
|---|
| | 809 | mods.append(gadget_module) |
|---|
| | 818 | vrj_subst_vars['VPR_VERSION'] = jccl_subst_vars['VPR_VERSION'] |
|---|
| | 819 | vrj_subst_vars['JCCL_VERSION'] = gadget_subst_vars['JCCL_VERSION'] |
|---|
| | 820 | vrj_subst_vars['SNX_VERSION'] = snx_module.getVersion('.') |
|---|
| | 821 | vrj_subst_vars['GADGET_VERSION'] = gadget_module.getVersion('.') |
|---|
| | 822 | vrj_subst_vars['BOOST_ROOT'] = r'${fpc_file_cwd}\..\..' |
|---|
| | 823 | vrj_subst_vars['BOOST_VERSION_DOT'] = '.'.join(getBoostVersion()) |
|---|
| | 824 | vrj_subst_vars['BOOST_INCLUDES'] = r'/I${prefix}\include' |
|---|
| | 825 | vrj_subst_vars['BOOST_LDFLAGS'] = r'/libpath:${prefix}\lib' |
|---|