[Lldb-commits] [lldb] r252764 - Symlink the `six` module during swig generation.
Zachary Turner via lldb-commits
lldb-commits at lists.llvm.org
Wed Nov 11 09:59:35 PST 2015
Author: zturner
Date: Wed Nov 11 11:59:34 2015
New Revision: 252764
URL: http://llvm.org/viewvc/llvm-project?rev=252764&view=rev
Log:
Symlink the `six` module during swig generation.
Modified:
lldb/trunk/scripts/CMakeLists.txt
lldb/trunk/scripts/Python/finishSwigPythonLLDB.py
Modified: lldb/trunk/scripts/CMakeLists.txt
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/scripts/CMakeLists.txt?rev=252764&r1=252763&r2=252764&view=diff
==============================================================================
--- lldb/trunk/scripts/CMakeLists.txt (original)
+++ lldb/trunk/scripts/CMakeLists.txt Wed Nov 11 11:59:34 2015
@@ -12,6 +12,7 @@ set(SWIG_HEADERS
find_package(SWIG REQUIRED)
add_custom_command(
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/LLDBWrapPython.cpp
+ OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/lldb.py
DEPENDS ${SWIG_SOURCES}
DEPENDS ${SWIG_INTERFACES}
DEPENDS ${SWIG_HEADERS}
Modified: lldb/trunk/scripts/Python/finishSwigPythonLLDB.py
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/scripts/Python/finishSwigPythonLLDB.py?rev=252764&r1=252763&r2=252764&view=diff
==============================================================================
--- lldb/trunk/scripts/Python/finishSwigPythonLLDB.py (original)
+++ lldb/trunk/scripts/Python/finishSwigPythonLLDB.py Wed Nov 11 11:59:34 2015
@@ -267,6 +267,37 @@ def make_symlink_other_platforms(vstrSrc
return (bOk, strErrMsg)
+def make_symlink_native(vDictArgs, strSrc, strTarget):
+ eOSType = utilsOsType.determine_os_type()
+ bDbg = "-d" in vDictArgs
+ bOk = True
+ strErrMsg = ""
+
+ target_filename = os.path.basename(strTarget)
+ if eOSType == utilsOsType.EnumOsType.Unknown:
+ bOk = False
+ strErrMsg = strErrMsgOsTypeUnknown
+ elif eOSType == utilsOsType.EnumOsType.Windows:
+ if os.path.isfile(strTarget):
+ if bDbg:
+ print((strMsgSymlinkExists % target_filename))
+ return (bOk, strErrMsg)
+ if bDbg:
+ print((strMsgSymlinkMk % (target_filename, strSrc, strTarget)))
+ bOk, strErrMsg = make_symlink_windows(strSrc,
+ strTarget)
+ else:
+ if os.path.islink(strTarget):
+ if bDbg:
+ print((strMsgSymlinkExists % target_filename))
+ return (bOk, strErrMsg)
+ if bDbg:
+ print((strMsgSymlinkMk % (target_filename, strSrc, strTarget)))
+ bOk, strErrMsg = make_symlink_other_platforms(strSrc,
+ strTarget)
+
+ return (bOk, strErrMsg)
+
#++---------------------------------------------------------------------------
# Details: Make the symbolic link.
# Args: vDictArgs - (R) Program input parameters.
@@ -303,29 +334,16 @@ def make_symlink(vDictArgs, vstrFramewor
strBuildDir = os.path.join("..", "..", "..", "..")
strSrc = os.path.normcase(os.path.join(strBuildDir, vstrSrcFile))
- if eOSType == utilsOsType.EnumOsType.Unknown:
- bOk = False
- strErrMsg = strErrMsgOsTypeUnknown
- elif eOSType == utilsOsType.EnumOsType.Windows:
- if os.path.isfile(strTarget):
- if bDbg:
- print((strMsgSymlinkExists % vstrTargetFile))
- return (bOk, strErrMsg)
- if bDbg:
- print((strMsgSymlinkMk % (vstrTargetFile, strSrc, strTarget)))
- bOk, strErrMsg = make_symlink_windows(strSrc,
- strTarget)
- else:
- if os.path.islink(strTarget):
- if bDbg:
- print((strMsgSymlinkExists % vstrTargetFile))
- return (bOk, strErrMsg)
- if bDbg:
- print((strMsgSymlinkMk % (vstrTargetFile, strSrc, strTarget)))
- bOk, strErrMsg = make_symlink_other_platforms(strSrc,
- strTarget)
+ return make_symlink_native(vDictArgs, strSrc, strTarget)
- return (bOk, strErrMsg)
+def make_symlink_six(vDictArgs, vstrFrameworkPythonDir):
+ dbg = utilsDebug.CDebugFnVerbose("Python script make_symlink_six()")
+ site_packages_dir = os.path.dirname(vstrFrameworkPythonDir)
+ six_module_filename = "six.py"
+ src_file = os.path.join(vDictArgs['--srcRoot'], "third_party", "Python", "module", "six", six_module_filename)
+ src_file = os.path.normpath(src_file)
+ target = os.path.join(site_packages_dir, six_module_filename)
+ return make_symlink_native(vDictArgs, src_file, target)
#++---------------------------------------------------------------------------
# Details: Make the symbolic that the script bridge for Python will need in
@@ -454,6 +472,9 @@ def create_symlinks(vDictArgs, vstrFrame
vstrFrameworkPythonDir,
strLibLldbFileName)
+ if bOk:
+ bOk, strErrMsg = make_symlink_six(vDictArgs, vstrFrameworkPythonDir)
+
# Make symlink for darwin-debug on Darwin
strDarwinDebugFileName = "darwin-debug"
if bOk and eOSType == utilsOsType.EnumOsType.Darwin:
More information about the lldb-commits
mailing list