Jelajahi Sumber

UseSWIG: Fix when Java is enabled as a language

Since commit v3.8.0-rc1~251^2 (UseSWIG: Record generated java files as
custom command outputs, 2016-11-28) the generated `.java` files are
listed as sources in the call to `add_library` by swig_add_library.
They are listed only as the outputs of custom commands and not intended
for compilation as part of the library.

Reported-by: Alan W. Irwin <[email protected]>
Brad King 8 tahun lalu
induk
melakukan
b4fbf677bb
1 mengubah file dengan 4 tambahan dan 2 penghapusan
  1. 4 2
      Modules/UseSWIG.cmake

+ 4 - 2
Modules/UseSWIG.cmake

@@ -125,8 +125,10 @@ macro(SWIG_GET_EXTRA_OUTPUT_FILES language outfiles generatedpath infile)
 
   endif()
   foreach(it ${SWIG_${language}_EXTRA_FILE_EXTENSIONS})
-    set(${outfiles} ${${outfiles}}
-      "${generatedpath}/${SWIG_GET_EXTRA_OUTPUT_FILES_module_basename}${it}")
+    set(extra_file "${generatedpath}/${SWIG_GET_EXTRA_OUTPUT_FILES_module_basename}${it}")
+    list(APPEND ${outfiles} ${extra_file})
+    # Treat extra outputs as plain files regardless of language.
+    set_property(SOURCE "${extra_file}" PROPERTY LANGUAGE "")
   endforeach()
 endmacro()