Timo Aaltonen pushed to branch upstream-unstable at X Strike Force / vulkan / 
vulkan-loader


Commits:
ee6f5ed0 by Shannon McPherson at 2019-03-01T03:34:21Z
loader: Update `loader.rc` copyright dates

Change-Id: If3c51f4d3177ad6745bfcbcf12e37860e306ece5

- - - - -
210ca44c by Shannon McPherson at 2019-03-05T20:07:21Z
build: Update known-good for 1.1.102 header

Additionally, updated copyright dates and added Metal to the platform
list

Updated:
- `scripts/common_codegen.py`
- `scripts/known_good.json`

Change-Id: I54718d18bff98f24b79d6d7bdf075698f7689885

- - - - -
7c4909fb by Nuno Subtil at 2019-03-05T20:49:11Z
build: Use Vulkan::Headers target to determine include paths

Change-Id: I73b9b2bfd5e33a9da861937510029cb71f3b2648

- - - - -
2f0abfcf by Shannon McPherson at 2019-03-06T18:46:14Z
build: Correct Metal platform name

In `common_codegen.py`, the Metal platform was defined without the
"_EXT" suffix

Change-Id: Ied604c46b55c669567517f5b2b7613d8c7f8ae64

- - - - -
ae3d877d by Bob Ellison at 2019-03-18T20:47:20Z
deps: allow a --generator switch to update_deps.py

This allows you to use any CMake generator available
on your system to configure the dependent repositories,
allowing you to match the same generator being used by
the project build.

update_deps.py:
- Take a parameter to specify a CMake generator, and pass it to CMake
  if present
- Allow the user to reduce the count of parallel make jobs that can
  happen at one time
- remove an unnecessary semicolon

- - - - -
a1230abd by Mike Weiblen at 2019-03-21T18:45:59Z
docs: Update BUILD.md for CMake versions

- - - - -
848a98f3 by Mike Weiblen at 2019-03-21T20:31:07Z
docs: Update CONTRIBUTING.md for CI process

Change-Id: I9ea07d41a917bcd91051514d2ad98a9f0d1908fe

- - - - -
4273a371 by Bob Ellison at 2019-03-26T22:00:30Z
deps: make update_deps.py the same across all repos

Matching update_deps.py from Khronos/Vulkan-Tools, Khronos/Vulkan-Loader,
Khronos/Vulkan-ValidationLayers, LunarG/VulkanSamples, and
LunarG/VulanTools.

- - - - -
2bc7afaf by Ricardo Garcia at 2019-04-03T14:36:29Z
loader: Destroy debug callbacks/messengers properly

When creating debug callbacks or messengers, each of them is added to a
linked list from the terminator, with the handle provided by the ICD.

When enabling some validation layers, this handle is renamed as part of
the chain and the application gets a different one.

In the removal process, the application usually receives one of these
function pointers using vkGetInstanceProcAddr:

  - debug_utils_DestroyDebugReportCallbackEXT
  - debug_utils_DestroyDebugUtilsMessengerEXT

Those trigger the chain calls but then try to remove the callback or
messenger from the linked list using the application-level handle, which
is not found because it doesn't match the one from the ICD.

The linked list should be accessed from the destruction terminators,
when the handle has already been unwrapped by the layers.

- - - - -
2a680fb2 by Lenny Komow at 2019-04-05T17:34:10Z
loader: Change override mechanics

Previously, the override's layer list was treated as an authoritative
list of layers. Now it uses a whilelist/blacklist so the override can
enabled, disable, or leave a layer alone.

Change-Id: I58db219deb2b6355c56aeb2d00187ac79ad531c2

- - - - -
cccc2692 by Lenny Komow at 2019-04-05T17:34:10Z
loader: Fix implicit layer override behavior

Change-Id: Icb0ce9070b6de1102c319f267fb3eb4a82b2760e

- - - - -
c2c2abeb by Lenny Komow at 2019-04-05T17:34:10Z
loader: Tweak code to better match conventions

Change-Id: Iaf91c8ea7e57663a8264efe07cf9f24ee17bc496

- - - - -
1df2ebd3 by Mike Schuchardt at 2019-04-08T22:38:37Z
scripts: Update known-good for 1.1.106 header

Changes:
- Integrate upstream script changes: We have to plumb-through the new
conventions object to continue using the makeCParamDecl utility function
- Add GGP to available platforms
- Add handling for extension dependencies: Previously, the codegen for
loader trampolines could not handle an extension command that depends on
more than one extension being present. This removes that limitation
- Add checks for device extensions: This adds a check for two functions
at device creation time:
  * VK_KHR_device_group
  * VK_EXT_full_screen_exclusive
The loader needs to know about these extensions for proper handling
of the vkGetDeviceGroupSurfacePresentModes2EXT terminator
- Update known-good file

Updated:
- `loader/loader.c`
- `loader/loader.h`
- `scripts/common_codegen.py`
- `scripts/dispatch_table_helper_generator.py`
- `scripts/helper_file_generator.py`
- `scripts/known_good.json`
- `scripts/loader_extension_generator.py`
- `scripts/loader_genvk.py`

Change-Id: I9f0828a8eee0e8e95b479e1b8feb31acaa10040d

- - - - -
c51f36f9 by Lenny Komow at 2019-04-15T21:35:58Z
loader: Support VK_EXT_full_screen_exclusive ext

This change adds manual handing for new APIs which need to unwrap an
ICD surface handle before calling down to the ICD.

Change-Id: Id64c8021a3d36800af9a59cafe52577a4d5d69ff

- - - - -
f22cdac7 by Nuno Subtil at 2019-04-18T00:58:56Z
build: Use Vulkan::Headers target for include paths

Change-Id: If693b2234d67f90c2e62a0706bac7c4b0e424f4c

- - - - -
54474dba by John Zulauf at 2019-04-18T16:33:59Z
Update Dispatch Table update to actual location

DispatchTable struct now has it's own file.  Updated references to the 
correct file.
- - - - -
15d333fc by Lenny Komow at 2019-04-19T20:03:51Z
loader: Fix mishandling of loader logging

This fixes several instances where loader_log() was being called
incorrectly. It also removes a stray va_start within loader_log()

Change-Id: I6e8a66f999e78367e23241fac489db5efc927719

- - - - -
edc8fbe9 by Lenny Komow at 2019-04-23T17:29:12Z
Revert "build: Use Vulkan::Headers target for include paths"

This reverts commit f22cdac76d5cebe4fe354114d6f48861bab477dd.

- - - - -
8df99b31 by Lenny Komow at 2019-04-26T21:21:23Z
repo: Bump known good to 1.1.107 header

Change-Id: I7b98293da8a326191cd7787936f373109d60e640

- - - - -
5730569e by Bryan Law-Smith at 2019-04-26T21:23:45Z
loader: VK_EXT_headless_surface additions

As VK_EXT_headless_surface is a WSI extension, supporting it
requires changes to the loader. This commit makes the necessary
changes, which are mostly straightforward plumbing.

However, this commit also includes a minor tweak to avoid a
segmentation fault when an implicitly enabled layer provides
support for an instance extension.

- - - - -
b2223847 by Felix Dörre at 2019-04-29T22:13:15Z
trampoline: extract device cration routine

- - - - -
34c3c5ae by Felix Dörre at 2019-04-29T22:13:15Z
loader: use more specific arguments

- - - - -
00c6e46c by Felix Dörre at 2019-04-29T22:13:15Z
loader: eliminate the need for 'physical_device_tramp'

- - - - -
e97e0a1a by Felix Dörre at 2019-04-29T22:13:15Z
layers: add layer callbacks for device creation

- - - - -
b89fe437 by Felix Dörre at 2019-04-29T22:13:15Z
tests: add test case for layer device creation

- - - - -
893bb561 by Felix Dörre at 2019-04-29T22:13:15Z
cleanup: address review findings

- - - - -
1efbf511 by Felix Dörre at 2019-04-29T22:13:15Z
layers: fix compile problems for WIN32

- - - - -
0679472c by Felix Dörre at 2019-04-29T22:13:15Z
layers: formatting

- - - - -
124130ec by Mike Weiblen at 2019-04-29T22:13:36Z
build: Update cmake_minimum_required(VERSION 3.11.3)

Change-Id: Ie05eeb1d7b880c20bd8c283b7fcc7c120d6f97eb

- - - - -
153ba165 by Lenny Komow at 2019-05-07T17:37:20Z
scripts: Remove unused codegen from build

There was some old codegen that was used for generating validation
layers when those were in the same repo as the loader. Since they're
separate, we can remove the files so they only exist in the layers
repo.

Change-Id: Ia72f235ea0617f25258631e1003123ec3edd88d4

- - - - -
b2ec71bd by Mike Schuchardt at 2019-05-13T14:49:06Z
build: Add GN build

Add support for GN, Google's meta-build system for Ninja:
https://gn.googlesource.com/gn/

Pull BUILD.gn and script dependencies from
https://chromium.googlesource.com/angle/angle

Add build_overrides for this project to enable both standalone and
component builds using GN

Add GN configuration to Travis CI

- - - - -
e773d8ac by Mike Schuchardt at 2019-05-13T14:49:06Z
scripts: Temporary workaround for python2

Temporarily patch abc module with ABC helper class until upstream
conventions.py script stops using it.

- - - - -
77197106 by Bob Ellison at 2019-05-15T20:40:27Z
update_deps: make --clean-repo switch work in all cases

--clean-repo right now will raise an exception if the repository
directory was not present.  This makes it work in all cases.

- - - - -
36c0b570 by Mike Weiblen at 2019-05-16T16:23:26Z
Revert "build: Update cmake_minimum_required(VERSION 3.11.3)"

This reverts PR 184 and its commit 124130ec3b181b2bb8a3c1cb0abe6d7259f995e2.

Change-Id: Ie55ef1a3a2aa1322cf960866e1bde7fa4e7b29fd

- - - - -
ecbb1f34 by Shannon McPherson at 2019-05-24T21:00:10Z
scripts: Correct uneven braces in ldr ext gen

Platform guards did not surround opening and closing curly braces in
`loader_extension_generator.py`

Change-Id: Ibc93b42988704e077c34bb11a1dfea79cbf59a19

- - - - -
392a7eb3 by Shannon McPherson at 2019-05-29T15:48:53Z
build: Update known-good for 1.1.108 header

Additionally, moved platform guards to surround
`GetPhysicalDeviceSurfacePresentModes2EXT`

Updated:
- `loader/extension_manual.c`
- `scripts/known_good.json`

Change-Id: I5c5eef6474915f8cb9aeaedcf95e84bb118badfb

- - - - -
9b673ea2 by Bob Ellison at 2019-06-07T17:02:39Z
cmake: Use CMake 3.10.2 for CI

These changes ensure that the Travis and AppVeyor
builds use a known version of CMake.

- - - - -
570fb6c4 by Bob Ellison at 2019-06-07T17:02:39Z
cmake: Adjust install process

After review, we decided for a slightly different install process, downloading
a CMake version explicitly instead of using chocolatey.

And Karl asked to be removed from the Travis notifications.

- - - - -
ecb0b1e6 by baldurk at 2019-06-11T17:20:18Z
loader: Call through layers for device extensions

If we reach the terminator function then we look up json properties
per-layer there. This allows layers to participate in the
enumeration and filter the list of extensions before they reach the
application.

- - - - -
c169a4b1 by Daniel Stone at 2019-06-24T19:31:18Z
docs: Remove Wayland disclaimer in docs

Wayland works totally fine, and has for a very long time.

Change-Id: Ifc582fd5068ad31758005f74b290f78e0f4554cc

- - - - -
8b365d02 by Daniel Stone at 2019-06-24T19:31:18Z
docs: Consistently capitalise XCB in docs

Change-Id: I580e818bbf603f22e8a907ca614d17b310cf7136

- - - - -
9dcebf50 by Dan Sinclair at 2019-06-24T21:17:33Z
tests: Set enable_testing in cmake file.

This CL adds the enable_testing() cmake call and registers
vk_loader_validation_tests as a test in cmake.

This allows the test to be run when `ctest` is executed.

Change-Id: I57fd579c7625fbf7bbd468a5716e3a68b601c1fd

- - - - -
cd4811a9 by Hernan Liatis at 2019-06-24T23:21:15Z
loader: Fix bug in searching for missing extension

Fix small bug in instance creation when extension
(VK_KHR_surface) does not exist. Layer names were
traversed incorrectly.

Change-Id: Icbf435550b6e03ef16003c027d30da3ce5388e93

- - - - -
42d8e961 by Shannon McPherson at 2019-06-25T16:04:58Z
build: Update known-good for 1.1.112 header

Change-Id: I7db7e5d53dd9ac911dac360c65397ad15bc3b079

- - - - -
3645fef3 by Shannon McPherson at 2019-07-01T19:37:49Z
build: Update known-good for 1.1.113 header

Change-Id: Ifcb76dd1535211d8d12941e4a65bdf0ee286f5c5

- - - - -
f157e126 by Ambroz Bizjak at 2019-07-02T19:55:00Z
cmake: Allow overriding SYSCONFDIR for CMake build on unix.

This adds a new CMake option SYSCONFDIR. If SYSCONFDIR is specified then it 
will be used via the SYSCONFDIR define, and /etc will not be automatically 
added via EXTRASYSCONFDIR. If SYSCONFDIR is not specified then the old logic 
will be used (CMAKE_INSTALL_FULL_SYSCONFDIR added via SYSCONFDIR, and /etc, if 
it's not the same, added via EXTRASYSCONFDIR).

- - - - -
17d26872 by myfreeweb at 2019-07-05T16:54:15Z
build: use CMAKE_DL_LIBS instead of -ldl

e.g. FreeBSD does not use an extra library for dynamic loading, everything is 
in libc.

CMake provides the CMAKE_DL_LIBS variable to handle this. Use it.
- - - - -
1bb7f685 by Shannon McPherson at 2019-07-08T15:22:35Z
build: Update known-good for 1.1.114 header

Change-Id: Iea7cb6e58a2fbe48c5aa1d881dd9c528db23b6ce

- - - - -
b423f800 by Lenny Komow at 2019-07-10T17:59:25Z
repo: Add Windows Driver Kit headers to build

Change-Id: I70658c68d06374037fd42b268b2befb30b78466b

- - - - -
ba4cac0a by Lenny Komow at 2019-07-10T17:59:25Z
repo: Bump appveyor to Visual Studio 2017

Change-Id: Id7dd757b74ce01219d6545cd5c7b58e634bf6e71

- - - - -
6eb61431 by Lenny Komow at 2019-07-10T17:59:25Z
loader: Get ICDs by calling enum adapter function

Change-Id: I5faa4e78ec1e445122ed7d640cc296c33d8a7aa4

- - - - -
232d005a by Lenny Komow at 2019-07-10T17:59:25Z
docs: Update build instructions for WDK dependency

Change-Id: Ifb5874c200ca7561c5f6c118ad69b48b331d2348

- - - - -
594cb04b by Sandeep Shinde at 2019-07-11T17:21:07Z
loader: Fix VK_KHR_surface_protected_capabilities

Loader is exposing VK_KHR_surface_protected_capabilities instance
extension support if one of the ICDs supports it.

An ICD, not supporting this extension, will not know about
VkSurfaceProtectedCapabilitiesKHR being passed as additional structure
to VkPhysicalDeviceSurfaceInfo2KHR in vulkan API
vkGetPhysicalDeviceSurfaceCapabilities2KHR().

Reset VkSurfaceProtectedCapabilitiesKHR.supportsProtected to false
always before calling vkGetPhysicalDeviceSurfaceCapabilities2KHR(). If
a particular ICD supports protected surfaces then it will set it
true.

An application will always receive either 1/0 in supportsProtected as
expected.

The issue got exposed through below CTS test failure on a Optimus windows
system with different ICDs versions, one supporting this extension and
another not supporting it.

- dEQP-VK.wsi.win32.surface.query_protected_capabilities

- - - - -
36d28090 by Shannon McPherson at 2019-07-15T20:30:41Z
build: Update known-good for 1.1.115 header

Change-Id: I84ba49eed31acddd66cf6719dbbbe562325d95a9

- - - - -
411ac4a6 by Mike Weiblen at 2019-07-17T00:17:21Z
build: Update cmake_minimum_required(VERSION 3.10.2)

Change-Id: Iedced8e252a1505c9cc0b1b07ba0d1012526689a

- - - - -
0d56723b by Petr Kraus at 2019-07-17T15:34:23Z
loader: Fix incorrect log handling of win32 wstrings

i.e. fixes missing output where it is prematurely cut after first wchar

Change-Id: Ib4a9ed75cc569a3f06833430740123c8c32918af

- - - - -
07c7c1c4 by Mike Schuchardt at 2019-07-19T17:36:03Z
scripts: Port master codegen script from VVL

- - - - -
8f31c12e by Mike Schuchardt at 2019-07-19T17:36:03Z
build: CMake use pre-generated source

- - - - -
98821bde by Mike Schuchardt at 2019-07-19T17:36:03Z
CI: Add codegen check to appveyor and travis

- - - - -
84a2db96 by Mike Schuchardt at 2019-07-19T17:36:03Z
build: GN use pre-generated source

- - - - -
b06d9d95 by Mike Schuchardt at 2019-07-19T17:36:03Z
doc: Add codegen instructions

- - - - -
8bd09ccc by Mike Schuchardt at 2019-07-19T17:36:03Z
scripts: Remove bogus helper file generator opts

- - - - -
ab2bcb97 by Alexey Kryshen at 2019-07-22T23:08:17Z
loader: Fix MinGW compilation

Change-Id: I2a80ed83b0431be07cb6f992f4c8742a86aca294

- - - - -


19 changed files:

- .appveyor.yml
- + .gn
- .travis.yml
- + BUILD.gn
- BUILD.md
- CMakeLists.txt
- CONTRIBUTING.md
- + build-gn/DEPS
- + build-gn/secondary/build_overrides/build.gni
- + build-gn/secondary/build_overrides/vulkan_loader.gni
- + build-gn/update_deps.sh
- + cmake/FindWDK.cmake
- loader/CMakeLists.txt
- loader/LoaderAndLayerInterface.md
- loader/debug_utils.c
- loader/extension_manual.c
- loader/extension_manual.h
- + loader/generated/.clang-format
- + loader/generated/vk_dispatch_table_helper.h


The diff was not included because it is too large.


View it on GitLab: 
https://salsa.debian.org/xorg-team/vulkan/vulkan-loader/compare/d0b340bbb08db108a9955f5268a38c9bc63918ff...ab2bcb97c78a3a086c3d09327de4fb47060a2bbf

-- 
View it on GitLab: 
https://salsa.debian.org/xorg-team/vulkan/vulkan-loader/compare/d0b340bbb08db108a9955f5268a38c9bc63918ff...ab2bcb97c78a3a086c3d09327de4fb47060a2bbf
You're receiving this email because of your account on salsa.debian.org.


Reply via email to