summaryrefslogtreecommitdiffstats
path: root/lldb/scripts
diff options
context:
space:
mode:
authorZachary Turner <zturner@google.com>2015-03-13 16:31:58 +0000
committerZachary Turner <zturner@google.com>2015-03-13 16:31:58 +0000
commitd3b7582c8444e4bc78f4282d8911927a2b4283d1 (patch)
treec3627175ac771d30d878ea2393090239a380b013 /lldb/scripts
parent1553727ed377d593f54ffbe464de81b386034f5f (diff)
downloadbcm5719-llvm-d3b7582c8444e4bc78f4282d8911927a2b4283d1.tar.gz
bcm5719-llvm-d3b7582c8444e4bc78f4282d8911927a2b4283d1.zip
[CMake] Make LLDBWrapPython.cpp depend on the .swig files.
Previously it would only regenerate LLDBWrapPython.cpp if one of the .i files changed, or if lldb.swig changed. This patch also makes it depend on the rest of the *.swig files, so that if any of them changes it regenerates the CMake. llvm-svn: 232175
Diffstat (limited to 'lldb/scripts')
-rw-r--r--lldb/scripts/CMakeLists.txt11
1 files changed, 6 insertions, 5 deletions
diff --git a/lldb/scripts/CMakeLists.txt b/lldb/scripts/CMakeLists.txt
index 7d5a4c3069a..f0d97813631 100644
--- a/lldb/scripts/CMakeLists.txt
+++ b/lldb/scripts/CMakeLists.txt
@@ -1,14 +1,15 @@
set(LLVM_NO_RTTI 1)
-file(GLOB SWIG_INPUTS Python/interface/*.i)
+file(GLOB SWIG_INTERFACES Python/interface/*.i)
+file(GLOB_RECURSE SWIG_SOURCES *.swig)
if ( LLDB_ENABLE_PYTHON_SCRIPTS_SWIG_API_GENERATION )
find_package(SWIG REQUIRED)
add_custom_command(
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/LLDBWrapPython.cpp
- DEPENDS ${LLDB_SOURCE_DIR}/scripts/lldb.swig
+ DEPENDS ${SWIG_SOURCES}
+ DEPENDS ${SWIG_INTERFACES}
DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/buildSwigWrapperClasses.py
- DEPENDS ${SWIG_INPUTS}
COMMAND ${PYTHON_EXECUTABLE} ${CMAKE_CURRENT_SOURCE_DIR}/buildSwigWrapperClasses.py "--srcRoot=${LLDB_SOURCE_DIR}" "--targetDir=${CMAKE_CURRENT_BINARY_DIR}" "--cfgBldDir=${CMAKE_CURRENT_BINARY_DIR}" "--prefix=${CMAKE_BINARY_DIR}" "--swigExecutable=${SWIG_EXECUTABLE}" -m
COMMENT "Python script building LLDB Python wrapper")
set_source_files_properties(${CMAKE_CURRENT_BINARY_DIR}/LLDBWrapPython.cpp PROPERTIES GENERATED 1)
@@ -25,8 +26,8 @@ if ( LLDB_ENABLE_PYTHON_SCRIPTS_SWIG_API_GENERATION )
else ()
add_custom_command(
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/LLDBWrapPython.cpp
- DEPENDS ${LLDB_SOURCE_DIR}/scripts/lldb.swig
- DEPENDS ${SWIG_INPUTS}
+ DEPENDS ${SWIG_SOURCES}
+ DEPENDS ${SWIG_INTERFACES}
# swig was directly invoked on Windows (where the Python API is not being generated) but on other platforms, we need to run the *swig-wrapper-classes.sh shell-scripts.
#COMMAND swig -c++ -shadow -python -I${LLDB_SOURCE_DIR}/include -I./. -outdir ${LLDB_SOURCE_DIR}/scripts/Python -o ${LLDB_SOURCE_DIR}/source/LLDBWrapPython.cpp ${LLDB_SOURCE_DIR}/scripts/lldb.swig
COMMAND env PYTHON_EXECUTABLE=${PYTHON_EXECUTABLE} ${CMAKE_CURRENT_SOURCE_DIR}/build-swig-wrapper-classes.sh ${LLDB_SOURCE_DIR} ${CMAKE_CURRENT_BINARY_DIR} ${CMAKE_CURRENT_BINARY_DIR} ${CMAKE_BINARY_DIR} -m
OpenPOWER on IntegriCloud