diff options
| author | Mike Stroyan <stroyan@google.com> | 2016-11-01 11:50:16 -0600 |
|---|---|---|
| committer | Mike Stroyan <stroyan@google.com> | 2016-11-02 08:29:53 -0600 |
| commit | 31d891f2498cfd8677a9ee44333df97e1c4e2808 (patch) | |
| tree | 53b07c8c320f7f47c65bb5b8c2b3ee1853d3f0dd | |
| parent | 745fc0cb7249b75c72fc99a1184346803c8821fe (diff) | |
| download | usermoji-31d891f2498cfd8677a9ee44333df97e1c4e2808.tar.xz | |
layers: Change to including vk_safe_struct code.
Cmake on windows cannot handle multiple projects using generated library code.
| -rw-r--r-- | build-android/jni/Android.mk | 2 | ||||
| -rw-r--r-- | layers/CMakeLists.txt | 15 | ||||
| -rw-r--r-- | layers/core_validation.cpp | 3 | ||||
| -rw-r--r-- | layers/unique_objects.cpp | 3 |
4 files changed, 9 insertions, 14 deletions
diff --git a/build-android/jni/Android.mk b/build-android/jni/Android.mk index ef793fdc..7d13c0e6 100644 --- a/build-android/jni/Android.mk +++ b/build-android/jni/Android.mk @@ -33,7 +33,6 @@ LOCAL_MODULE := VkLayer_core_validation LOCAL_SRC_FILES += $(LAYER_DIR)/layer-src/core_validation/core_validation.cpp LOCAL_SRC_FILES += $(LAYER_DIR)/layer-src/core_validation/descriptor_sets.cpp LOCAL_SRC_FILES += $(LAYER_DIR)/common/vk_layer_table.cpp -LOCAL_SRC_FILES += $(LAYER_DIR)/layer-src/unique_objects/vk_safe_struct.cpp LOCAL_C_INCLUDES += $(SRC_DIR)/include \ $(SRC_DIR)/layers \ $(LAYER_DIR)/include \ @@ -110,7 +109,6 @@ include $(BUILD_SHARED_LIBRARY) include $(CLEAR_VARS) LOCAL_MODULE := VkLayer_unique_objects LOCAL_SRC_FILES += $(LAYER_DIR)/layer-src/unique_objects/unique_objects.cpp -LOCAL_SRC_FILES += $(LAYER_DIR)/layer-src/unique_objects/vk_safe_struct.cpp LOCAL_SRC_FILES += $(LAYER_DIR)/common/vk_layer_table.cpp LOCAL_C_INCLUDES += $(SRC_DIR)/include \ $(SRC_DIR)/layers \ diff --git a/layers/CMakeLists.txt b/layers/CMakeLists.txt index 2af4e606..b61aa26d 100644 --- a/layers/CMakeLists.txt +++ b/layers/CMakeLists.txt @@ -128,16 +128,7 @@ run_vk_helper(gen_struct_wrappers vk_struct_wrappers.h vk_struct_wrappers.cpp vk_safe_struct.h -# Don't list vk_safe_struct.cpp as OUTPUT to avoid duplicate builds. -# If listed here use of it for add_library will cause it to be created -# independently of custom target generate_vk_layer_helpers . -# That breaks parallel builds. -# vk_safe_struct.cpp -) - -# Let gen_struct_wrappers really create vk_safe_struct.cpp -add_custom_command(OUTPUT vk_safe_struct.cpp - COMMAND echo defer making vk_safe_struct.cpp + vk_safe_struct.cpp ) set_source_files_properties( @@ -188,13 +179,13 @@ else() install(TARGETS VkLayer_utils DESTINATION ${CMAKE_INSTALL_LIBDIR}) endif() -add_vk_layer(core_validation core_validation.cpp vk_layer_table.cpp vk_safe_struct.cpp descriptor_sets.cpp) +add_vk_layer(core_validation core_validation.cpp vk_layer_table.cpp descriptor_sets.cpp) add_vk_layer(object_tracker object_tracker.cpp vk_layer_table.cpp) add_vk_layer(image image.cpp vk_layer_table.cpp) add_vk_layer(swapchain swapchain.cpp vk_layer_table.cpp) # generated add_vk_layer(threading threading.cpp thread_check.h vk_layer_table.cpp) -add_vk_layer(unique_objects unique_objects.cpp unique_objects_wrappers.h vk_layer_table.cpp vk_safe_struct.cpp) +add_vk_layer(unique_objects unique_objects.cpp unique_objects_wrappers.h vk_layer_table.cpp) add_vk_layer(parameter_validation parameter_validation.cpp parameter_validation.h vk_layer_table.cpp) # Core validation has additional dependencies diff --git a/layers/core_validation.cpp b/layers/core_validation.cpp index 74326895..06f8aa2d 100644 --- a/layers/core_validation.cpp +++ b/layers/core_validation.cpp @@ -70,6 +70,9 @@ } #endif +// This intentionally includes a cpp file +#include "vk_safe_struct.cpp" + using namespace std; namespace core_validation { diff --git a/layers/unique_objects.cpp b/layers/unique_objects.cpp index 1a79d771..0d81c809 100644 --- a/layers/unique_objects.cpp +++ b/layers/unique_objects.cpp @@ -41,6 +41,9 @@ #include "vk_layer_data.h" #include "vk_layer_utils.h" +// This intentionally includes a cpp file +#include "vk_safe_struct.cpp" + #include "unique_objects_wrappers.h" namespace unique_objects { |
