mirror of
https://github.com/Gericom/teak-llvm.git
synced 2025-06-21 12:35:47 -04:00

Summary: Instead of doing string chopping on the resulting python file, get swig to output the version for us. The two things which make slightly non-trivial are: - in order to get swig to expand SWIG_VERSION for us, we cannot use %pythoncode directly, but we have to go through an intermediate macro. - SWIG_VERSION is a hex number, but it's components are supposed to be interpreted decimally, so there is a bit of integer magic needed to get the right number to come out. I've tested that this approach works both with the latest (3.0.12) and oldest (1.3.40) supported swig. Reviewers: zturner, jingham, serge-sans-paille Subscribers: jdoerfert, lldb-commits Differential Revision: https://reviews.llvm.org/D58172 llvm-svn: 354104
29 lines
708 B
Python
29 lines
708 B
Python
"""
|
|
Test that we embed the swig version into the lldb module
|
|
"""
|
|
|
|
from __future__ import print_function
|
|
|
|
"""
|
|
import os
|
|
import time
|
|
import re
|
|
import lldb
|
|
from lldbsuite.test.decorators import *
|
|
from lldbsuite.test import lldbutil
|
|
"""
|
|
from lldbsuite.test.lldbtest import *
|
|
|
|
class SwigVersionTestCase(TestBase):
|
|
|
|
mydir = TestBase.compute_mydir(__file__)
|
|
NO_DEBUG_INFO_TESTCASE = True
|
|
|
|
def test(self):
|
|
self.assertTrue(getattr(lldb, "swig_version"))
|
|
self.assertIsInstance(lldb.swig_version, tuple)
|
|
self.assertEqual(len(lldb.swig_version), 3)
|
|
self.assertGreaterEqual(lldb.swig_version[0], 1)
|
|
for v in lldb.swig_version:
|
|
self.assertGreaterEqual(v, 0)
|