summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Modules/UseSWIG.cmake6
1 files changed, 4 insertions, 2 deletions
diff --git a/Modules/UseSWIG.cmake b/Modules/UseSWIG.cmake
index b38e2b7..959893f 100644
--- a/Modules/UseSWIG.cmake
+++ b/Modules/UseSWIG.cmake
@@ -219,7 +219,7 @@ macro(SWIG_ADD_SOURCE_TO_MODULE name outfiles infile)
if(CMAKE_GENERATOR MATCHES "Make")
get_filename_component(swig_generated_timestamp
"${swig_generated_file_fullname}" NAME_WE)
- set(swig_gen_target gen_${swig_generated_timestamp})
+ set(swig_gen_target gen_${name}_${swig_generated_timestamp})
set(swig_generated_timestamp
"${swig_outdir}/${swig_generated_timestamp}.stamp")
set(swig_custom_output ${swig_generated_timestamp})
@@ -311,9 +311,11 @@ macro(SWIG_ADD_LIBRARY name)
endforeach()
set(swig_generated_sources)
+ set(swig_generated_targets)
foreach(it ${swig_dot_i_sources})
SWIG_ADD_SOURCE_TO_MODULE(${name} swig_generated_source ${it})
set(swig_generated_sources ${swig_generated_sources} "${swig_generated_source}")
+ list(APPEND swig_generated_targets "${swig_gen_target}")
endforeach()
get_directory_property(swig_extra_clean_files ADDITIONAL_MAKE_CLEAN_FILES)
set_directory_properties(PROPERTIES
@@ -324,7 +326,7 @@ macro(SWIG_ADD_LIBRARY name)
${swig_other_sources})
if(CMAKE_GENERATOR MATCHES "Make")
# see IMPLICIT_DEPENDS above
- add_dependencies(${SWIG_MODULE_${name}_REAL_NAME} ${swig_gen_target})
+ add_dependencies(${SWIG_MODULE_${name}_REAL_NAME} ${swig_generated_targets})
endif()
if("${_SAM_TYPE}" STREQUAL "MODULE")
set_target_properties(${SWIG_MODULE_${name}_REAL_NAME} PROPERTIES NO_SONAME ON)