[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

vulkan: Changes to 'debian-unstable'



 .gitignore                                                 |    6 
 BUILD.md                                                   |  127 
 CMakeLists.txt                                             |  130 
 CONTRIBUTING.md                                            |   47 
 COPYRIGHT.txt                                              |  131 
 LICENSE.txt                                                |  302 
 README.md                                                  |   95 
 build_windows_targets.bat                                  |  151 
 common/vulkan_wrapper.cpp                                  |  408 
 common/vulkan_wrapper.h                                    |  239 
 debian/changelog                                           |    8 
 debian/copyright                                           |    2 
 debian/patches/layers-dont-set-an-rpath.diff               |   18 
 debian/patches/layers-install-to-cmake-install-libdir.diff |   26 
 debian/patches/loader-add-install-rule.diff                |    4 
 debian/patches/series                                      |    1 
 debian/patches/trim-build.diff                             |    6 
 demos/CMakeLists.txt                                       |   13 
 demos/android/AndroidManifest.xml.cube                     |   22 
 demos/android/AndroidManifest.xml.tri                      |   22 
 demos/android/include/cube.frag.h                          |   97 
 demos/android/include/cube.vert.h                          |  208 
 demos/android/include/lunarg.ppm.h                         |16389 +++++++++++++
 demos/android/include/tri.frag.h                           |   95 
 demos/android/include/tri.vert.h                           |  128 
 demos/android/jni/Android.mk                               |   46 
 demos/android/jni/Application.mk                           |   22 
 demos/android/res/values/strings.xml                       |   24 
 demos/cube.c                                               |  740 
 demos/cube.frag                                            |   25 
 demos/cube.vert                                            |   25 
 demos/linmath.h                                            |   25 
 demos/smoke/CMakeLists.txt                                 |    2 
 demos/smoke/Game.h                                         |   24 
 demos/smoke/Helpers.h                                      |   24 
 demos/smoke/Main.cpp                                       |   24 
 demos/smoke/Meshes.cpp                                     |   28 
 demos/smoke/Meshes.h                                       |   24 
 demos/smoke/Shell.cpp                                      |   24 
 demos/smoke/Shell.h                                        |   24 
 demos/smoke/ShellAndroid.cpp                               |   24 
 demos/smoke/ShellAndroid.h                                 |   24 
 demos/smoke/ShellWin32.cpp                                 |   27 
 demos/smoke/ShellWin32.h                                   |   24 
 demos/smoke/ShellXcb.cpp                                   |   24 
 demos/smoke/ShellXcb.h                                     |   24 
 demos/smoke/Simulation.cpp                                 |   31 
 demos/smoke/Simulation.h                                   |   24 
 demos/smoke/Smoke.cpp                                      |   72 
 demos/smoke/Smoke.frag                                     |    2 
 demos/smoke/Smoke.h                                        |   24 
 demos/smoke/Smoke.push_constant.vert                       |    2 
 demos/smoke/Smoke.vert                                     |    2 
 demos/smoke/android/build.gradle                           |    4 
 demos/smoke/generate-dispatch-table                        |   25 
 demos/smoke/glsl-to-spirv                                  |   24 
 demos/tri.c                                                |  482 
 demos/tri.frag                                             |   25 
 demos/tri.vert                                             |   28 
 demos/vulkaninfo.c                                         |  863 
 determine_vs_version.py                                    |  148 
 dev/null                                                   |binary
 generator.py                                               |  764 
 genvk.py                                                   |   70 
 glslang_revision                                           |    2 
 include/vulkan/vk_icd.h                                    |   49 
 include/vulkan/vk_layer.h                                  |   50 
 include/vulkan/vk_platform.h                               |   25 
 include/vulkan/vk_sdk_platform.h                           |   25 
 include/vulkan/vulkan.h                                    |  140 
 layers/CMakeLists.txt                                      |  148 
 layers/README.md                                           |   81 
 layers/core_validation.cpp                                 | 8921 +++----
 layers/core_validation.h                                   |  890 
 layers/core_validation_error_enums.h                       |  244 
 layers/core_validation_types.h                             |  510 
 layers/descriptor_sets.cpp                                 | 1306 +
 layers/descriptor_sets.h                                   |  367 
 layers/device_limits.cpp                                   |  561 
 layers/device_limits.h                                     |   49 
 layers/image.cpp                                           |  773 
 layers/image.h                                             |   45 
 layers/linux/VkLayer_core_validation.json                  |    4 
 layers/linux/VkLayer_device_limits.json                    |    4 
 layers/linux/VkLayer_image.json                            |    4 
 layers/linux/VkLayer_object_tracker.json                   |    4 
 layers/linux/VkLayer_parameter_validation.json             |    4 
 layers/linux/VkLayer_swapchain.json                        |    4 
 layers/linux/VkLayer_threading.json                        |    4 
 layers/linux/VkLayer_unique_objects.json                   |    2 
 layers/object_tracker.h                                    |  721 
 layers/parameter_validation.cpp                            | 2925 +-
 layers/parameter_validation_utils.h                        |  554 
 layers/swapchain.cpp                                       | 1336 -
 layers/swapchain.h                                         |   98 
 layers/threading.cpp                                       |  270 
 layers/threading.h                                         |   90 
 layers/unique_objects.h                                    |  394 
 layers/vk_layer_config.cpp                                 |  192 
 layers/vk_layer_config.h                                   |   64 
 layers/vk_layer_data.h                                     |   25 
 layers/vk_layer_extension_utils.cpp                        |   25 
 layers/vk_layer_extension_utils.h                          |   25 
 layers/vk_layer_logging.h                                  |  325 
 layers/vk_layer_settings.txt                               |    9 
 layers/vk_layer_table.cpp                                  |   53 
 layers/vk_layer_table.h                                    |   26 
 layers/vk_layer_utils.cpp                                  |   74 
 layers/vk_layer_utils.h                                    |   25 
 layers/vk_validation_layer_details.md                      |  347 
 layers/windows/VkLayer_core_validation.json                |    4 
 layers/windows/VkLayer_device_limits.json                  |    4 
 layers/windows/VkLayer_image.json                          |    4 
 layers/windows/VkLayer_object_tracker.json                 |    4 
 layers/windows/VkLayer_parameter_validation.json           |    4 
 layers/windows/VkLayer_swapchain.json                      |    4 
 layers/windows/VkLayer_threading.json                      |    4 
 layers/windows/VkLayer_unique_objects.json                 |    2 
 libs/vkjson/.clang-format                                  |    1 
 libs/vkjson/CMakeLists.txt                                 |    2 
 libs/vkjson/vkjson.cc                                      |   77 
 libs/vkjson/vkjson.h                                       |   72 
 libs/vkjson/vkjson_device.cc                               |   81 
 libs/vkjson/vkjson_info.cc                                 |  176 
 libs/vkjson/vkjson_instance.cc                             |  164 
 libs/vkjson/vkjson_unittest.cc                             |   67 
 loader/CMakeLists.txt                                      |   25 
 loader/LoaderAndLayerInterface.md                          |  872 
 loader/cJSON.c                                             |   11 
 loader/cJSON.h                                             |    5 
 loader/debug_report.c                                      |   96 
 loader/debug_report.h                                      |   45 
 loader/dev_ext_trampoline.c                                |   25 
 loader/gpa_helper.h                                        |   25 
 loader/loader.c                                            | 1448 -
 loader/loader.h                                            |  143 
 loader/loader.rc                                           |   98 
 loader/table_ops.h                                         |   53 
 loader/trampoline.c                                        |  382 
 loader/vk-loader-generate.py                               |   77 
 loader/vk_loader_layer.h                                   |   32 
 loader/vk_loader_platform.h                                |   41 
 loader/wsi.c                                               |  264 
 loader/wsi.h                                               |   85 
 reg.py                                                     |   29 
 source_line_info.py                                        |   25 
 spirv-tools_revision                                       |    2 
 tests/CMakeLists.txt                                       |   20 
 tests/_run_all_tests.ps1                                   |   51 
 tests/_vkvalidatelayerdoc.ps1                              |   67 
 tests/icd-spv.h                                            |   21 
 tests/layer_validation_tests.cpp                           |12076 ++++++---
 tests/layers/CMakeLists.txt                                |   86 
 tests/layers/linux/VkLayer_wrap_objects.json               |   11 
 tests/layers/windows/VkLayer_wrap_objects.json             |   11 
 tests/layers/wrap_objects.cpp                              | 1608 +
 tests/layers/wrap_objects.h                                |  120 
 tests/loader_validation_tests.cpp                          |  196 
 tests/run_all_tests.sh                                     |    5 
 tests/test_common.h                                        |   25 
 tests/test_environment.cpp                                 |   32 
 tests/test_environment.h                                   |   25 
 tests/test_wrap_objects.sh                                 |   30 
 tests/vkrenderframework.cpp                                |  226 
 tests/vkrenderframework.h                                  |   79 
 tests/vktestbinding.cpp                                    |   49 
 tests/vktestbinding.h                                      |   26 
 tests/vktestframework.cpp                                  |   29 
 tests/vktestframework.h                                    |   25 
 tests/vktestframeworkandroid.cpp                           |   25 
 tests/vktestframeworkandroid.h                             |   25 
 tests/vulkan_wrapper.cpp                                   |  401 
 tests/vulkan_wrapper.h                                     |  232 
 update_external_sources.bat                                |  788 
 update_external_sources.sh                                 |   14 
 vk-generate.py                                             |  101 
 vk-layer-generate.py                                       |  786 
 vk-layer-introspect                                        |  399 
 vk.xml                                                     |  379 
 vk_helper.py                                               |  383 
 vk_layer_documentation_generate.py                         |  126 
 vulkan.py                                                  |   58 
 182 files changed, 48124 insertions(+), 19151 deletions(-)

New commits:
commit e03c25ad50f997b49c1242354f4881f9674131e8
Author: Timo Aaltonen <tjaalton@debian.org>
Date:   Thu Jun 30 14:43:10 2016 +0300

    remove gradle-wrapper.jar from the tree

diff --git a/demos/smoke/android/gradle/wrapper/gradle-wrapper.jar b/demos/smoke/android/gradle/wrapper/gradle-wrapper.jar
deleted file mode 100644
index 13372ae..0000000
Binary files a/demos/smoke/android/gradle/wrapper/gradle-wrapper.jar and /dev/null differ

commit 9687664b84f31200a81eb722b0d739ec83c0b814
Author: Timo Aaltonen <tjaalton@debian.org>
Date:   Thu Jun 30 14:40:16 2016 +0300

    patches: Refreshed.

diff --git a/debian/changelog b/debian/changelog
index d83f684..8e002b7 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -2,6 +2,7 @@ vulkan (1.0.17.0+dfsg1-1) UNRELEASED; urgency=medium
 
   * New upstream release.
   * copyright: Update excludes.
+  * patches: Refreshed.
 
  -- Timo Aaltonen <tjaalton@debian.org>  Thu, 30 Jun 2016 13:28:49 +0300
 
diff --git a/debian/patches/layers-dont-set-an-rpath.diff b/debian/patches/layers-dont-set-an-rpath.diff
deleted file mode 100644
index 7d2fd79..0000000
--- a/debian/patches/layers-dont-set-an-rpath.diff
+++ /dev/null
@@ -1,18 +0,0 @@
-commit d9add88314908456d458da18f48d0a3a2c73789e
-Author: Adam Jackson <ajax@redhat.com>
-Date:   Wed Feb 10 14:52:34 2016 -0500
-
-    layers: Don't set an rpath
-
---- a/layers/CMakeLists.txt
-+++ b/layers/CMakeLists.txt
-@@ -31,9 +31,6 @@ set(LAYER_JSON_FILES
-     VkLayer_device_limits
-     )
- 
--set(VK_LAYER_RPATH /usr/lib/x86_64-linux-gnu/vulkan/layer:/usr/lib/i386-linux-gnu/vulkan/layer)
--set(CMAKE_INSTALL_RPATH ${VK_LAYER_RPATH})
--
- if (NOT WIN32)
-     # extra setup for out-of-tree builds
-     if (NOT (CMAKE_CURRENT_SOURCE_DIR STREQUAL CMAKE_CURRENT_BINARY_DIR))
diff --git a/debian/patches/layers-install-to-cmake-install-libdir.diff b/debian/patches/layers-install-to-cmake-install-libdir.diff
index 06e0728..36e8116 100644
--- a/debian/patches/layers-install-to-cmake-install-libdir.diff
+++ b/debian/patches/layers-install-to-cmake-install-libdir.diff
@@ -6,21 +6,21 @@ Date:   Wed Feb 10 15:11:54 2016 -0500
 
 --- a/layers/CMakeLists.txt
 +++ b/layers/CMakeLists.txt
-@@ -75,7 +75,7 @@ else()
-     target_link_Libraries(VkLayer_${target} layer_utils)
- 	add_dependencies(VkLayer_${target} generate_vk_layer_helpers)
- 	set_target_properties(VkLayer_${target} PROPERTIES LINK_FLAGS "-Wl,-Bsymbolic")
--	install(TARGETS VkLayer_${target} DESTINATION ${PROJECT_BINARY_DIR}/install_staging)
-+	install(TARGETS VkLayer_${target} DESTINATION ${CMAKE_INSTALL_LIBDIR})
+@@ -82,7 +82,7 @@ else()
+     target_link_Libraries(VkLayer_${target} VkLayer_utils)
+     add_dependencies(VkLayer_${target} generate_vk_layer_helpers)
+     set_target_properties(VkLayer_${target} PROPERTIES LINK_FLAGS "-Wl,-Bsymbolic")
+-    install(TARGETS VkLayer_${target} DESTINATION ${PROJECT_BINARY_DIR}/install_staging)
++    install(TARGETS VkLayer_${target} DESTINATION ${CMAKE_INSTALL_LIBDIR})
      endmacro()
  endif()
  
-@@ -143,7 +143,7 @@ if (WIN32)
-     set_target_properties(layer_utils_static PROPERTIES OUTPUT_NAME layer_utils)
-     target_link_libraries(layer_utils)
+@@ -149,7 +149,7 @@ if (WIN32)
+     add_library(VkLayer_utils STATIC vk_layer_config.cpp vk_layer_extension_utils.cpp vk_layer_utils.cpp)
  else()
--    install(TARGETS layer_utils DESTINATION ${PROJECT_BINARY_DIR}/install_staging)
-+    install(TARGETS layer_utils DESTINATION ${CMAKE_INSTALL_LIBDIR})
+     add_library(VkLayer_utils SHARED vk_layer_config.cpp vk_layer_extension_utils.cpp vk_layer_utils.cpp)
+-    install(TARGETS VkLayer_utils DESTINATION ${PROJECT_BINARY_DIR}/install_staging)
++    install(TARGETS VkLayer_utils DESTINATION ${CMAKE_INSTALL_LIBDIR})
  endif()
- add_vk_layer(core_validation core_validation.cpp vk_layer_table.cpp)
- add_vk_layer(device_limits device_limits.cpp vk_layer_table.cpp vk_layer_utils.cpp)
+ 
+ add_vk_layer(core_validation core_validation.cpp vk_layer_table.cpp vk_safe_struct.cpp descriptor_sets.cpp)
diff --git a/debian/patches/loader-add-install-rule.diff b/debian/patches/loader-add-install-rule.diff
index 53603cc..0c2a516 100644
--- a/debian/patches/loader-add-install-rule.diff
+++ b/debian/patches/loader-add-install-rule.diff
@@ -6,9 +6,9 @@ Date:   Wed Feb 10 15:17:06 2016 -0500
 
 --- a/loader/CMakeLists.txt
 +++ b/loader/CMakeLists.txt
-@@ -68,4 +68,5 @@ else()
+@@ -83,4 +83,5 @@ else()
      add_library(vulkan SHARED ${LOADER_SRCS})
-     set_target_properties(vulkan PROPERTIES SOVERSION "1" VERSION "1.0.8")
+     set_target_properties(vulkan PROPERTIES SOVERSION "1" VERSION "1.0.17")
      target_link_libraries(vulkan -ldl -lpthread -lm)
 +    install(TARGETS vulkan DESTINATION ${CMAKE_INSTALL_LIBDIR})
  endif()
diff --git a/debian/patches/series b/debian/patches/series
index 9c4895a..0c445fa 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -3,4 +3,3 @@ demos-dont-build-tri-or-cube-or-smoke.diff
 loader-add-install-rule.diff
 demos-add-install-rule.diff
 layers-install-to-cmake-install-libdir.diff
-layers-dont-set-an-rpath.diff
diff --git a/debian/patches/trim-build.diff b/debian/patches/trim-build.diff
index e9e36ab..6ae20f9 100644
--- a/debian/patches/trim-build.diff
+++ b/debian/patches/trim-build.diff
@@ -1,6 +1,6 @@
 --- a/CMakeLists.txt
 +++ b/CMakeLists.txt
-@@ -91,10 +91,10 @@ else()
+@@ -103,10 +103,10 @@ else()
  endif()
  
  option(BUILD_LOADER "Build loader" ON)
@@ -10,6 +10,6 @@
  option(BUILD_DEMOS "Build demos" ON)
 -option(BUILD_VKJSON "Build vkjson" ON)
 +option(BUILD_VKJSON "Build vkjson" OFF)
+ option(CUSTOM_GLSLANG_BIN_ROOT "Use the user defined GLSLANG_BINARY_ROOT" OFF)
+ option(CUSTOM_SPIRV_TOOLS_BIN_ROOT "Use the user defined SPIRV_TOOLS_BINARY_ROOT" OFF)
  
- find_program(GLSLANG_VALIDATOR NAMES glslangValidator
-              HINTS "${CMAKE_SOURCE_DIR}/../glslang/${BUILDTGT_DIR}/install/bin"

commit fe897196c4a5c6a08fe148978a04f7f0b1f96096
Author: Timo Aaltonen <tjaalton@debian.org>
Date:   Thu Jun 30 13:34:47 2016 +0300

    copyright: Update excludes.

diff --git a/debian/changelog b/debian/changelog
index bc43d2e..d83f684 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,6 +1,7 @@
 vulkan (1.0.17.0+dfsg1-1) UNRELEASED; urgency=medium
 
   * New upstream release.
+  * copyright: Update excludes.
 
  -- Timo Aaltonen <tjaalton@debian.org>  Thu, 30 Jun 2016 13:28:49 +0300
 
diff --git a/debian/copyright b/debian/copyright
index 126b19b..c1a06fb 100644
--- a/debian/copyright
+++ b/debian/copyright
@@ -2,7 +2,7 @@ Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
 Upstream-Name: Vulkan-LoaderAndValidationLayers
 Source: https://github.com/KhronosGroup/Vulkan-LoaderAndValidationLayers
 Files-Excluded: 
- buildAndroid
+ build-android
  demos/smoke/android/gradle/wrapper/gradle-wrapper.jar
  tests/gtest-*
  windowsRuntimeInstaller

commit b747abad4e7ed8a4d4161bf7c94b3cca8e08497a
Author: Timo Aaltonen <tjaalton@debian.org>
Date:   Thu Jun 30 13:30:27 2016 +0300

    update changelog

diff --git a/debian/changelog b/debian/changelog
index 9d68646..bc43d2e 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,9 @@
+vulkan (1.0.17.0+dfsg1-1) UNRELEASED; urgency=medium
+
+  * New upstream release.
+
+ -- Timo Aaltonen <tjaalton@debian.org>  Thu, 30 Jun 2016 13:28:49 +0300
+
 vulkan (1.0.8.0+dfsg1-1) unstable; urgency=medium
 
   * New upstream release.

commit e966288576573c56199415f086fc5a1abfb11c1c
Author: Mark Young <marky@lunarg.com>
Date:   Thu Jun 23 11:25:03 2016 -0600

    docs: Fix broken link in LoaderAndLayerInterface
    
    The Manifest file example link was broken.
    
    Change-Id: I454392f14f526ef6fdf5b30d971bd06739acb994

diff --git a/loader/LoaderAndLayerInterface.md b/loader/LoaderAndLayerInterface.md
index 70069c3..3f0fef8 100644
--- a/loader/LoaderAndLayerInterface.md
+++ b/loader/LoaderAndLayerInterface.md
@@ -1165,7 +1165,7 @@ Allowable values for type (both before and after deprecation) are "INSTANCE", "G
 Thus, layers must have a type of "GLOBAL" or "INSTANCE" for the loader to include the layer in the enumerated instance layer list.
 
 "library\_path" is the filename, full path, or relative path to the library file.
-See [Manifest File Example](# ManifestFileExample) section for more details.
+See [Manifest File Example](#ManifestFileExample) section for more details.
 
 Note 2: One "implementation\_version" node is required per layer. This node gives the layer version, a single number
 increasing with backward uncompatible changes.

commit a41d861d585f2507dbc2ddd7cfad7e46da80e454
Author: Mark Young <marky@lunarg.com>
Date:   Wed Jun 22 16:55:31 2016 -0600

    winsdk: Fix multiple RT uninstall issue
    
    Change originally by David Pinedo.  If the same Vulkan Run-time
    installer is executed multiple times, it will bump the install count
    for the RT installation.  There was a problem during uninstall
    which failed to look at the install count and would always remove
    some important files.  This fixes that issue.
    
    Change-Id: I4dda50b0dbdd9ec901aa25713be7d7348f3d67ec

diff --git a/windowsRuntimeInstaller/InstallerRT.nsi b/windowsRuntimeInstaller/InstallerRT.nsi
index 0bfd47f..92da393 100644
--- a/windowsRuntimeInstaller/InstallerRT.nsi
+++ b/windowsRuntimeInstaller/InstallerRT.nsi
@@ -618,31 +618,44 @@ Section "uninstall"
 
         # Delete vulkaninfo.exe in C:\Windows\System32 and C:\Windows\SysWOW64
         Delete /REBOOTOK $WINDIR\SysWow64\vulkaninfo.exe
-        Delete /REBOOTOK "$WINDIR\SysWow64\vulkaninfo-$FileVersion.exe"
         Delete /REBOOTOK $WINDIR\System32\vulkaninfo.exe
-        Delete /REBOOTOK "$WINDIR\System32\vulkaninfo-$FileVersion.exe"
 
-        # Delete vullkan dll files: vulkan-<majorabi>.dll and vulkan-<majorabi>-<major>-<minor>-<patch>-<buildno>.dll
+        # Delete vulkan-<majorabi>.dll in C:\Windows\System32 and C:\Windows\SysWOW64
         Delete /REBOOTOK $WINDIR\SysWow64\vulkan-${VERSION_ABI_MAJOR}.dll
-        Delete /REBOOTOK $WINDIR\SysWow64\vulkan-$FileVersion.dll
         Delete /REBOOTOK $WINDIR\System32\vulkan-${VERSION_ABI_MAJOR}.dll
-        Delete /REBOOTOK $WINDIR\System32\vulkan-$FileVersion.dll
 
     # Else, running on a 32-bit OS machine
     ${Else}
 
         # Delete vulkaninfo.exe in C:\Windows\System32
         Delete /REBOOTOK $WINDIR\System32\vulkaninfo.exe
-        Delete /REBOOTOK "$WINDIR\System32\vulkaninfo-$FileVersion.exe"
 
-        # Delete vullkan dll files: vulkan-<majorabi>.dll and vulkan-<majorabi>-<major>-<minor>-<patch>-<buildno>.dll
+        # Delete vulkan-<majorabi>.dll in C:\Windows\System32
         Delete /REBOOTOK $WINDIR\System32\vulkan-${VERSION_ABI_MAJOR}.dll
-        Delete /REBOOTOK $WINDIR\System32\vulkan-$FileVersion.dll
 
     ${EndIf}
     StrCpy $1 80
     Call un.CheckForError
 
+    # If Ref Count is zero, remove files in C:\Windows\System32 and C:\Windows\SysWow64
+    ${If} $IC <= 0
+
+        ${If} ${RunningX64}
+            # Delete vulkaninfo.exe in C:\Windows\System32 and C:\Windows\SysWOW64
+            Delete /REBOOTOK "$WINDIR\SysWow64\vulkaninfo-$FileVersion.exe"
+            Delete /REBOOTOK "$WINDIR\System32\vulkaninfo-$FileVersion.exe"
+            # Delete vulkan-<majorabi>-<major>-<minor>-<patch>-<buildno>.dll from sys dirs
+            Delete /REBOOTOK $WINDIR\SysWow64\vulkan-$FileVersion.dll
+            Delete /REBOOTOK $WINDIR\System32\vulkan-$FileVersion.dll
+        ${Else}
+            # Delete vulkaninfo.exe in C:\Windows\System32
+            Delete /REBOOTOK "$WINDIR\System32\vulkaninfo-$FileVersion.exe"
+            # Delete vulkan-<majorabi>-<major>-<minor>-<patch>-<buildno>.dll from sys dir
+            Delete /REBOOTOK $WINDIR\System32\vulkan-$FileVersion.dll
+        ${EndIf}
+
+    ${Endif}
+
     # Run the ConfigLayersAndVulkanDLL.ps1 script to copy the most recent version of
     # vulkan-<abimajor>-*.dll to vulkan-<abimajor>.dll, and to set up layer registry
     # entries to use layers from the corresponding SDK
@@ -664,7 +677,7 @@ Section "uninstall"
     ${Endif}
     Call un.CheckForError
 
-    # If Ref Count is zero, uninstall everything
+    # If Ref Count is zero, remove install dir
     ${If} $IC <= 0
 
         # Remove files in install dir

commit 176929e69f3ff59fe70b6bd390be12e82038c92c
Author: Rene Lindsay <rene@lunarg.com>
Date:   Wed Jun 22 15:46:48 2016 -0700

    demos: Check global extensions before creating surface

diff --git a/demos/vulkaninfo.c b/demos/vulkaninfo.c
index ec3fcd5..51a4b47 100644
--- a/demos/vulkaninfo.c
+++ b/demos/vulkaninfo.c
@@ -483,7 +483,7 @@ static void app_dev_init(struct app_dev *dev, struct app_gpu *gpu) {
     };
     VkResult U_ASSERT_ONLY err;
 
-    //Device extensions
+    // Device extensions
     app_get_physical_device_layer_extensions(
         gpu, NULL, &gpu->device_extension_count, &gpu->device_extensions);
 
@@ -584,7 +584,8 @@ static void app_get_instance_extensions(struct app_instance *inst) {
 
     // Collect global extensions
     inst->global_extension_count = 0;
-    // Gets instance extensions, if no layer was specified in the first paramteter
+    // Gets instance extensions, if no layer was specified in the first
+    // paramteter
     app_get_global_layer_extensions(NULL, &inst->global_extension_count,
                                     &inst->global_extensions);
 }
@@ -600,8 +601,9 @@ static void app_create_instance(struct app_instance *inst) {
                                            // extension names
     for (i = 0; (i < inst->global_extension_count); i++) {
         const char *found_name = inst->global_extensions[i].extensionName;
-        if (!strcmp(VK_KHR_SURFACE_EXTENSION_NAME, found_name))
-            {ext_names[ext_count++] = VK_KHR_SURFACE_EXTENSION_NAME;}
+        if (!strcmp(VK_KHR_SURFACE_EXTENSION_NAME, found_name)) {
+            ext_names[ext_count++] = VK_KHR_SURFACE_EXTENSION_NAME;
+        }
     }
 
     if (ext_count)
@@ -610,20 +612,24 @@ static void app_create_instance(struct app_instance *inst) {
              i++) {
             const char *found_name = inst->global_extensions[i].extensionName;
 #ifdef VK_USE_PLATFORM_WIN32_KHR
-            if (!strcmp(VK_KHR_WIN32_SURFACE_EXTENSION_NAME, found_name))
-                {ext_names[ext_count++] = VK_KHR_WIN32_SURFACE_EXTENSION_NAME;}
+            if (!strcmp(VK_KHR_WIN32_SURFACE_EXTENSION_NAME, found_name)) {
+                ext_names[ext_count++] = VK_KHR_WIN32_SURFACE_EXTENSION_NAME;
+            }
 #endif
 #ifdef VK_USE_PLATFORM_XCB_KHR
-            if (!strcmp(VK_KHR_XCB_SURFACE_EXTENSION_NAME, found_name))
-                {ext_names[ext_count++] = VK_KHR_XCB_SURFACE_EXTENSION_NAME;}
+            if (!strcmp(VK_KHR_XCB_SURFACE_EXTENSION_NAME, found_name)) {
+                ext_names[ext_count++] = VK_KHR_XCB_SURFACE_EXTENSION_NAME;
+            }
 #endif
 #ifdef VK_USE_PLATFORM_XLIB_KHR
-            if (!strcmp(VK_KHR_XLIB_SURFACE_EXTENSION_NAME, found_name))
-                {ext_names[ext_count++] = VK_KHR_XLIB_SURFACE_EXTENSION_NAME;}
+            if (!strcmp(VK_KHR_XLIB_SURFACE_EXTENSION_NAME, found_name)) {
+                ext_names[ext_count++] = VK_KHR_XLIB_SURFACE_EXTENSION_NAME;
+            }
 #endif
 #ifdef VK_USE_PLATFORM_ANDROID_KHR
-            if (!strcmp(VK_KHR_ANDROID_SURFACE_EXTENSION_NAME, found_name))
-                {ext_names[ext_count++] = VK_KHR_ANDROID_SURFACE_EXTENSION_NAME;}
+            if (!strcmp(VK_KHR_ANDROID_SURFACE_EXTENSION_NAME, found_name)) {
+                ext_names[ext_count++] = VK_KHR_ANDROID_SURFACE_EXTENSION_NAME;
+            }
 #endif
         }
     // If we don't find the KHR_SURFACE extension and at least one other
@@ -1240,6 +1246,17 @@ app_dump_extensions(const char *indent, const char *layer_name,
     fflush(stdout);
 }
 
+// Returns true if the named extension is in the list of extensions.
+static bool has_extension(const char *extension_name,
+                          const uint32_t extension_count,
+                          const VkExtensionProperties *extension_properties) {
+    for (uint32_t i = 0; i < extension_count; i++) {
+        if (!strcmp(extension_name, extension_properties[i].extensionName))
+            return true;
+    }
+    return false;
+}
+
 static void app_gpu_dump_queue_props(const struct app_gpu *gpu, uint32_t id) {
     const VkQueueFamilyProperties *props = &gpu->queue_props[id];
 
@@ -1319,7 +1336,7 @@ static void app_gpu_dump(const struct app_gpu *gpu) {
     uint32_t i;
 
     printf("\nDevice Properties and Extensions :\n");
-    printf(  "==================================\n");
+    printf("==================================\n");
     printf("GPU%u\n", gpu->id);
     app_gpu_dump_props(gpu);
     printf("\n");
@@ -1387,7 +1404,7 @@ int main(int argc, char **argv) {
     app_create_instance(&inst);
 
     printf("\nInstance Extensions:\n");
-    printf(  "====================\n");
+    printf("====================\n");
     app_dump_extensions("", "Instance", inst.global_extension_count,
                         inst.global_extensions);
 
@@ -1425,19 +1442,19 @@ int main(int argc, char **argv) {
                layer_prop->layerName, (char *)layer_prop->description,
                spec_version, layer_version);
 
-        app_dump_extensions("\t","Layer",
+        app_dump_extensions("\t", "Layer",
                             inst.global_layers[i].extension_count,
                             inst.global_layers[i].extension_properties);
 
-        char* layerName=inst.global_layers[i].layer_properties.layerName;
-        printf("\tDevices \tcount = %d\n",gpu_count);
+        char *layerName = inst.global_layers[i].layer_properties.layerName;
+        printf("\tDevices \tcount = %d\n", gpu_count);
         for (uint32_t j = 0; j < gpu_count; j++) {
             printf("\t\tGPU id       : %u (%s)\n", j, gpus[j].props.deviceName);
-            uint32_t count=0;
-            VkExtensionProperties* props;
+            uint32_t count = 0;
+            VkExtensionProperties *props;
             app_get_physical_device_layer_extensions(&gpus[j], layerName,
                                                      &count, &props);
-            app_dump_extensions("\t\t","Layer-Device",count,props);
+            app_dump_extensions("\t\t", "Layer-Device", count, props);
             free(props);
         }
         printf("\n");
@@ -1453,39 +1470,48 @@ int main(int argc, char **argv) {
 
 //--WIN32--
 #ifdef VK_USE_PLATFORM_WIN32_KHR
-    app_create_win32_window(&inst);
-    for (i = 0; i < gpu_count; i++) {
-        app_create_win32_surface(&inst, &gpus[i]);
-        printf("GPU id       : %u (%s)\n", i, gpus[i].props.deviceName);
-        printf("Surface type : %s\n", VK_KHR_WIN32_SURFACE_EXTENSION_NAME);
-        formatCount += app_dump_surface_formats(&inst, &gpus[i]);
-        app_destroy_surface(&inst);
+    if (has_extension(VK_KHR_WIN32_SURFACE_EXTENSION_NAME,
+                      inst.global_extension_count, inst.global_extensions)) {
+        app_create_win32_window(&inst);
+        for (i = 0; i < gpu_count; i++) {
+            app_create_win32_surface(&inst, &gpus[i]);
+            printf("GPU id       : %u (%s)\n", i, gpus[i].props.deviceName);
+            printf("Surface type : %s\n", VK_KHR_WIN32_SURFACE_EXTENSION_NAME);
+            formatCount += app_dump_surface_formats(&inst, &gpus[i]);
+            app_destroy_surface(&inst);
+        }
+        app_destroy_win32_window(&inst);
     }
-    app_destroy_win32_window(&inst);
 #endif
 //--XCB--
 #ifdef VK_USE_PLATFORM_XCB_KHR
-    app_create_xcb_window(&inst);
-    for (i = 0; i < gpu_count; i++) {
-        app_create_xcb_surface(&inst, &gpus[i]);
-        printf("GPU id       : %u (%s)\n", i, gpus[i].props.deviceName);
-        printf("Surface type : %s\n", VK_KHR_XCB_SURFACE_EXTENSION_NAME);
-        formatCount += app_dump_surface_formats(&inst, &gpus[i]);
-        app_destroy_surface(&inst);
+    if (has_extension(VK_KHR_XCB_SURFACE_EXTENSION_NAME,
+                      inst.global_extension_count, inst.global_extensions)) {
+        app_create_xcb_window(&inst);
+        for (i = 0; i < gpu_count; i++) {
+            app_create_xcb_surface(&inst, &gpus[i]);
+            printf("GPU id       : %u (%s)\n", i, gpus[i].props.deviceName);
+            printf("Surface type : %s\n", VK_KHR_XCB_SURFACE_EXTENSION_NAME);
+            formatCount += app_dump_surface_formats(&inst, &gpus[i]);
+            app_destroy_surface(&inst);
+        }
+        app_destroy_xcb_window(&inst);
     }
-    app_destroy_xcb_window(&inst);
 #endif
 //--XLIB--
 #ifdef VK_USE_PLATFORM_XLIB_KHR
-    app_create_xlib_window(&inst);
-    for (i = 0; i < gpu_count; i++) {
-        app_create_xlib_surface(&inst, &gpus[i]);
-        printf("GPU id       : %u (%s)\n", i, gpus[i].props.deviceName);
-        printf("Surface type : %s\n", VK_KHR_XLIB_SURFACE_EXTENSION_NAME);
-        formatCount += app_dump_surface_formats(&inst, &gpus[i]);
-        app_destroy_surface(&inst);
+    if (has_extension(VK_KHR_XLIB_SURFACE_EXTENSION_NAME,
+                      inst.global_extension_count, inst.global_extensions)) {
+        app_create_xlib_window(&inst);
+        for (i = 0; i < gpu_count; i++) {
+            app_create_xlib_surface(&inst, &gpus[i]);
+            printf("GPU id       : %u (%s)\n", i, gpus[i].props.deviceName);
+            printf("Surface type : %s\n", VK_KHR_XLIB_SURFACE_EXTENSION_NAME);
+            formatCount += app_dump_surface_formats(&inst, &gpus[i]);
+            app_destroy_surface(&inst);
+        }
+        app_destroy_xlib_window(&inst);
     }
-    app_destroy_xlib_window(&inst);
 #endif
     // TODO: Android / Wayland / MIR
     if (!formatCount)

commit 964416c1e34fced990b3f24ba47005b11c725c37
Author: Tony Barbour <tony@LunarG.com>
Date:   Wed Jun 22 15:24:24 2016 -0600

    layers: Update json files - VK_EXT_debug_report v3
    
    Change-Id: Ifdabdd288b965b17d1af31c443909da7469df63a

diff --git a/layers/linux/VkLayer_core_validation.json b/layers/linux/VkLayer_core_validation.json
index 85ed1a0..9ed677d 100644
--- a/layers/linux/VkLayer_core_validation.json
+++ b/layers/linux/VkLayer_core_validation.json
@@ -10,7 +10,7 @@
         "instance_extensions": [
              {
                  "name": "VK_EXT_debug_report",
-                 "spec_version": "2"
+                 "spec_version": "3"
              }
          ]
     }
diff --git a/layers/linux/VkLayer_device_limits.json b/layers/linux/VkLayer_device_limits.json
index 94abcd1..fa7bf9e 100644
--- a/layers/linux/VkLayer_device_limits.json
+++ b/layers/linux/VkLayer_device_limits.json
@@ -10,7 +10,7 @@
         "instance_extensions": [
              {
                  "name": "VK_EXT_debug_report",
-                 "spec_version": "2"
+                 "spec_version": "3"
              }
          ]
     }
diff --git a/layers/linux/VkLayer_image.json b/layers/linux/VkLayer_image.json
index a17ff94..4638d4b 100644
--- a/layers/linux/VkLayer_image.json
+++ b/layers/linux/VkLayer_image.json
@@ -10,7 +10,7 @@
         "instance_extensions": [
              {
                  "name": "VK_EXT_debug_report",
-                 "spec_version": "2"
+                 "spec_version": "3"
              }
          ]
     }
diff --git a/layers/linux/VkLayer_object_tracker.json b/layers/linux/VkLayer_object_tracker.json
index 8d7ce1d..689c165 100644
--- a/layers/linux/VkLayer_object_tracker.json
+++ b/layers/linux/VkLayer_object_tracker.json
@@ -10,7 +10,7 @@
         "instance_extensions": [
              {
                  "name": "VK_EXT_debug_report",
-                 "spec_version": "2"
+                 "spec_version": "3"
              }
          ]
     }
diff --git a/layers/linux/VkLayer_parameter_validation.json b/layers/linux/VkLayer_parameter_validation.json
index 6f06a42..44a67ad 100644
--- a/layers/linux/VkLayer_parameter_validation.json
+++ b/layers/linux/VkLayer_parameter_validation.json
@@ -10,7 +10,7 @@
         "instance_extensions": [
              {
                  "name": "VK_EXT_debug_report",
-                 "spec_version": "2"
+                 "spec_version": "3"
              }
          ]
     }
diff --git a/layers/linux/VkLayer_swapchain.json b/layers/linux/VkLayer_swapchain.json
index 5e20ebf..a3b70a4 100644
--- a/layers/linux/VkLayer_swapchain.json
+++ b/layers/linux/VkLayer_swapchain.json
@@ -10,7 +10,7 @@
         "instance_extensions": [
              {
                  "name": "VK_EXT_debug_report",
-                 "spec_version": "2"
+                 "spec_version": "3"
              }
          ]
     }
diff --git a/layers/linux/VkLayer_threading.json b/layers/linux/VkLayer_threading.json
index ebe98ed..2299dcc 100644
--- a/layers/linux/VkLayer_threading.json
+++ b/layers/linux/VkLayer_threading.json
@@ -10,7 +10,7 @@
         "instance_extensions": [
              {
                  "name": "VK_EXT_debug_report",
-                 "spec_version": "2"
+                 "spec_version": "3"
              }
          ]
     }
diff --git a/layers/windows/VkLayer_core_validation.json b/layers/windows/VkLayer_core_validation.json
index f230d9d..95ec05d 100644
--- a/layers/windows/VkLayer_core_validation.json
+++ b/layers/windows/VkLayer_core_validation.json
@@ -10,7 +10,7 @@
         "instance_extensions": [
              {
                  "name": "VK_EXT_debug_report",
-                 "spec_version": "2"
+                 "spec_version": "3"
              }
          ]
     }
diff --git a/layers/windows/VkLayer_device_limits.json b/layers/windows/VkLayer_device_limits.json
index 05f62ab..a0c3fd5 100644
--- a/layers/windows/VkLayer_device_limits.json
+++ b/layers/windows/VkLayer_device_limits.json
@@ -10,7 +10,7 @@
         "instance_extensions": [
              {
                  "name": "VK_EXT_debug_report",
-                 "spec_version": "2"
+                 "spec_version": "3"
              }
          ]
     }
diff --git a/layers/windows/VkLayer_image.json b/layers/windows/VkLayer_image.json
index d9d091c..7033a09 100644
--- a/layers/windows/VkLayer_image.json
+++ b/layers/windows/VkLayer_image.json
@@ -10,7 +10,7 @@
         "instance_extensions": [
              {
                  "name": "VK_EXT_debug_report",
-                 "spec_version": "2"
+                 "spec_version": "3"
              }
          ]
     }
diff --git a/layers/windows/VkLayer_object_tracker.json b/layers/windows/VkLayer_object_tracker.json
index b63b0bb..0c28941 100644
--- a/layers/windows/VkLayer_object_tracker.json
+++ b/layers/windows/VkLayer_object_tracker.json
@@ -10,7 +10,7 @@
         "instance_extensions": [
              {
                  "name": "VK_EXT_debug_report",
-                 "spec_version": "2"
+                 "spec_version": "3"
              }
          ]
     }
diff --git a/layers/windows/VkLayer_parameter_validation.json b/layers/windows/VkLayer_parameter_validation.json
index a2f983d..c1187a3 100644
--- a/layers/windows/VkLayer_parameter_validation.json
+++ b/layers/windows/VkLayer_parameter_validation.json
@@ -10,7 +10,7 @@
         "instance_extensions": [
              {
                  "name": "VK_EXT_debug_report",
-                 "spec_version": "2"
+                 "spec_version": "3"
              }
          ]
     }
diff --git a/layers/windows/VkLayer_swapchain.json b/layers/windows/VkLayer_swapchain.json
index a3def9a..ac6e248 100644
--- a/layers/windows/VkLayer_swapchain.json
+++ b/layers/windows/VkLayer_swapchain.json
@@ -10,7 +10,7 @@
         "instance_extensions": [
              {
                  "name": "VK_EXT_debug_report",
-                 "spec_version": "2"
+                 "spec_version": "3"
              }
          ]
     }
diff --git a/layers/windows/VkLayer_threading.json b/layers/windows/VkLayer_threading.json
index a874e6a..54b2125 100644
--- a/layers/windows/VkLayer_threading.json
+++ b/layers/windows/VkLayer_threading.json
@@ -10,7 +10,7 @@
         "instance_extensions": [
              {
                  "name": "VK_EXT_debug_report",
-                 "spec_version": "2"
+                 "spec_version": "3"
              }
          ]
     }

commit 31df808aa1e44ddbfa52a26214d4728f87d98d09
Author: Mark Young <marky@lunarg.com>
Date:   Wed Jun 22 15:25:00 2016 -0600

    loader: Fix version info on manifest string.
    
    Debug_report manifest string version was incorrect because of
    the new version parsing code I had put in place.
    
    Change-Id: I48d40b131bc3efd573d08576573ee9a4060a7332

diff --git a/loader/loader.c b/loader/loader.c
index 1e74a6d..5b12306 100644
--- a/loader/loader.c
+++ b/loader/loader.c
@@ -2480,6 +2480,8 @@ void loader_icd_scan(const struct loader_instance *inst,
             return;
         }
         char *file_vers = cJSON_Print(item);
+        loader_log(inst, VK_DEBUG_REPORT_INFORMATION_BIT_EXT, 0,
+                   "Found manifest file %s, version %s", file_str, file_vers);
         // Get the major/minor/and patch as integers for easier comparison
         vers_tok = strtok(file_vers, ".\"\n\r");
         if (NULL != vers_tok) {
@@ -2493,8 +2495,6 @@ void loader_icd_scan(const struct loader_instance *inst,
                 }
             }
         }
-        loader_log(inst, VK_DEBUG_REPORT_INFORMATION_BIT_EXT, 0,
-                   "Found manifest file %s, version %s", file_str, file_vers);
         if (file_major_vers != 1 || file_minor_vers != 0 || file_patch_vers > 1)
             loader_log(inst, VK_DEBUG_REPORT_WARNING_BIT_EXT, 0,
                        "Unexpected manifest file version (expected 1.0.0 or 1.0.1), may "

commit 3897687aefcad30d46d08fc3a8bd6097c2486595
Author: David Pinedo <david@lunarg.com>
Date:   Wed Jun 22 10:37:55 2016 -0600

    windowsbuild:  chmod -x update_external_sources.bat

diff --git a/update_external_sources.bat b/update_external_sources.bat
old mode 100755
new mode 100644

commit 703d10c95a7e6434c972c30195c5e3709e8e8c80
Author: Rene Lindsay <rene@lunarg.com>
Date:   Wed Jun 22 09:00:12 2016 -0600

    demos: LX535 Remove deprecated device layers.
    
    Change-Id: I8f4bbac6d124ef18f4fb3edd0da5acf308d6f7a1

diff --git a/demos/vulkaninfo.c b/demos/vulkaninfo.c
index 5a5409d..ec3fcd5 100644
--- a/demos/vulkaninfo.c
+++ b/demos/vulkaninfo.c
@@ -154,9 +154,6 @@ struct app_gpu {
     VkPhysicalDeviceFeatures features;
     VkPhysicalDevice limits;
 
-    uint32_t device_layer_count;
-    struct layer_extension_list *device_layers;
-
     uint32_t device_extension_count;
     VkExtensionProperties *device_extensions;
 
@@ -486,49 +483,7 @@ static void app_dev_init(struct app_dev *dev, struct app_gpu *gpu) {
     };
     VkResult U_ASSERT_ONLY err;
 
-    uint32_t count = 0;
-
-    // Scan layers
-    VkLayerProperties *device_layer_properties = NULL;
-    struct layer_extension_list *device_layers = NULL;
-
-    do {
-        err = vkEnumerateDeviceLayerProperties(gpu->obj, &count, NULL);
-        assert(!err);
-
-        if (device_layer_properties) {
-            free(device_layer_properties);
-        }
-        device_layer_properties = malloc(sizeof(VkLayerProperties) * count);
-        assert(device_layer_properties);
-
-        if (device_layers) {
-            free(device_layers);
-        }
-        device_layers = malloc(sizeof(struct layer_extension_list) * count);
-        assert(device_layers);
-
-        err = vkEnumerateDeviceLayerProperties(gpu->obj, &count,
-                                               device_layer_properties);
-    } while (err == VK_INCOMPLETE);
-    assert(!err);
-
-    gpu->device_layer_count = count;
-    gpu->device_layers = device_layers;
-
-    for (uint32_t i = 0; i < gpu->device_layer_count; i++) {
-        VkLayerProperties *src_info = &device_layer_properties[i];
-        struct layer_extension_list *dst_info = &gpu->device_layers[i];
-        memcpy(&dst_info->layer_properties, src_info,
-               sizeof(VkLayerProperties));
-
-        // Save away layer extension info for report
-        app_get_physical_device_layer_extensions(
-            gpu, src_info->layerName, &dst_info->extension_count,
-            &dst_info->extension_properties);
-    }
-    free(device_layer_properties);
-
+    //Device extensions
     app_get_physical_device_layer_extensions(
         gpu, NULL, &gpu->device_extension_count, &gpu->device_extensions);
 


Reply to: