Skip to content
Snippets Groups Projects

Compare revisions

Changes are shown as if the source revision was being merged into the target revision. Learn more about comparing revisions.

Source

Select target project
No results found

Target

Select target project
  • videolan/vlc
  • chouquette/vlc
  • bakiewicz.marek122/vlc
  • devnexen/vlc
  • rohanrajpal/vlc
  • blurrrb/vlc
  • gsoc/gsoc2019/darkapex/vlc
  • b1ue/vlc
  • fkuehne/vlc
  • magsoft/vlc
  • chub/vlc
  • cramiro9/vlc
  • robUx4/vlc
  • rom1v/vlc
  • akshayaky/vlc
  • tmk907/vlc
  • akymaster/vlc
  • govind.sharma/vlc
  • psilokos/vlc
  • xjbeta/vlc
  • jahan/vlc
  • 1480c1/vlc
  • amanchande/vlc
  • aaqib/vlc
  • rist/vlc
  • apol/vlc
  • mindfreeze/vlc
  • alexandre-janniaux/vlc
  • sandsmark/vlc
  • jagannatharjun/vlc
  • gsoc/gsoc2020/matiaslgonzalez/vlc
  • gsoc/gsoc2020/jagannatharjun/vlc
  • mstorsjo/vlc
  • gsoc/gsoc2020/vedenta/vlc
  • gsoc/gsoc2020/arnav-ishaan/vlc
  • gsoc/gsoc2020/andreduong/vlc
  • fuzun/vlc
  • gsoc/gsoc2020/vatsin/vlc
  • gsoc/gsoc2020/sagid/vlc
  • yaron/vlc
  • Phoenix/vlc
  • Garf/vlc
  • ePiratWorkarounds/vlc
  • tguillem/vlc
  • jnqnfe/vlc
  • mdc/vlc
  • Vedaa/vlc
  • rasa/vlc
  • quink/vlc
  • yealo/vlc
  • aleksey_ak/vlc
  • ePirat/vlc
  • ilya.yanok/vlc
  • asenat/vlc
  • m/vlc
  • bunjee/vlc
  • BLumia/vlc
  • sagudev/vlc
  • hamedmonji30/vlc
  • nullgemm/vlc
  • DivyamAhuja/vlc
  • thesamesam/vlc
  • dag7/vlc
  • snehil101/vlc
  • haasn/vlc
  • jbk/vlc
  • ValZapod/vlc
  • mfkl/vlc
  • WangChuan/vlc
  • core1024/vlc
  • GhostVaibhav/vlc
  • dfuhrmann/vlc
  • davide.prade/vlc
  • tmatth/vlc
  • Courmisch/vlc
  • zouya/vlc
  • hpi/vlc
  • EwoutH/vlc
  • aleung27/vlc
  • hengwu0/vlc
  • saladin/vlc
  • ashuio/vlc
  • richselwood/vlc
  • verma16Ayush/vlc
  • chemicalflash/vlc
  • PoignardAzur/vlc
  • huangjieNT/vlc
  • Blake-Haydon/vlc
  • AnuthaDev/vlc
  • gsoc/gsoc2021/mpd/vlc
  • nicolas_lequec/vlc
  • sambassaly/vlc
  • thresh/vlc
  • bonniegong/vlc
  • myaashish/vlc
  • stavros.vagionitis/vlc
  • ileoo/vlc
  • louis-santucci/vlc
  • cchristiansen/vlc
  • sabyasachi07/vlc
  • AbduAmeen/vlc
  • ashishb0410/vlc
  • urbanhusky/vlc
  • davidepietrasanta/vlc
  • riksleutelstad/vlc
  • jeremyVignelles/vlc
  • komh/vlc
  • iamjithinjohn/vlc
  • JohannesKauffmann/vlc2
  • kunglao/vlc
  • natzberg/vlc
  • jill/vlc
  • cwendling/vlc
  • adufou/vlc
  • ErwanAirone/vlc
  • HasinduDilshan10/vlc
  • vagrantc/vlc
  • rafiv/macos-bigsur-icon
  • Aymeriic/vlc
  • saranshg20/vlc
  • metzlove24/vlc
  • linkfanel/vlc
  • Ds886/vlc
  • metehan-arslan/vlc
  • Skantes/vlc
  • kgsandundananjaya96/vlc
  • mitchcapper/vlc
  • advaitgupta/vlc
  • StefanBruens/vlc
  • ratajs/vlc
  • T.M.F.B.3761/vlc
  • m222059/vlc
  • casemerrick/vlc
  • joshuaword2alt/vlc
  • sjwaddy/vlc
  • dima/vlc
  • Ybalrid/vlc
  • umxprime/vlc
  • eschmidt/vlc
  • vannieuwenhuysenmichelle/vlc
  • badcf00d/vlc
  • wesinator/vlc
  • louis/vlc
  • xqq/vlc
  • EmperorYP7/vlc
  • NicoLiam/vlc
  • loveleen/vlc
  • rofferom/vlc
  • rbultje/vlc
  • TheUnamed/vlc
  • pratiksharma341/vlc
  • Saurab17/vlc
  • purist.coder/vlc
  • Shuicheng/vlc
  • mdrrubel292/vlc
  • silverbleu00/vlc
  • metif12/vlc
  • asher-m/vlc
  • jeffk/vlc
  • Brandonbr1/vlc
  • beautyyuyanli/vlc
  • rego21/vlc
  • muyangren907/vlc
  • collectionbylawrencejason/vlc
  • evelez/vlc
  • GSMgeeth/vlc
  • Oneric/vlc
  • TJ5/vlc
  • XuanTung95/vlc
  • darrenjenny21/vlc
  • Trenly/vlc
  • RockyTDR/vlc
  • mjakubowski/vlc
  • caprica/vlc
  • ForteFrankie/vlc
  • seannamiller19/vlc
  • junlon2006/vlc
  • kiwiren6666/vlc
  • iuseiphonexs/vlc
  • fenngtun/vlc
  • Rajdutt999/vlc
  • typx/vlc
  • leon.vitanos/vlc
  • robertogarci0938/vlc
  • gsoc/gsoc2022/luc65r/vlc-mpd
  • skeller/vlc
  • MCJack123/vlc
  • luc65r/vlc-mpd
  • popov895/vlc
  • claucambra/vlc
  • brad/vlc
  • matthewmurua88/vlc
  • Tomas8874/vlc
  • philenotfound/vlc
  • makita-do3/vlc
  • LZXCorp/vlc
  • mar0x/vlc
  • senojetkennedy0102/vlc
  • shaneb243/vlc
  • ahmadbader/vlc
  • rajduttcse26/vlc-audio-filters
  • Juniorzito8415/vlc
  • achernyakov/vlc
  • lucasjetgroup/vlc
  • pupdoggy666/vlc
  • gmde9363/vlc
  • alexnwayne/vlc
  • bahareebrahimi781/vlc
  • hamad633666/vlc
  • umghof3112/vlc
  • joe0199771874/vlc
  • Octocats66666666/vlc
  • jjm_223/vlc
  • btech10110.19/vlc
  • sunnykfc028/vlc-audio-filters
  • loic/vlc
  • nguyenminhducmx1/vlc
  • JanekKrueger/vlc
  • bstubbington2/vlc
  • rcombs/vlc
  • Ordissimo/vlc
  • king7532/vlc
  • noobsauce101/vlc
  • schong0525/vlc
  • myQwil/vlc
  • apisbg91/vlc
  • geeboy0101017/vlc
  • kim.faughey/vlc
  • nurupo/vlc
  • yyusea/vlc
  • 0711235879.khco/vlc
  • ialo/vlc
  • iloveyeye2/vlc
  • gdtdftdqtd/vlc
  • leandroconsiglio/vlc
  • AndyHTML2012/vlc
  • ncz/vlc
  • lucenticus/vlc
  • knr1931/vlc
  • kjoonlee/vlc
  • chandrakant100/vlc-qt
  • johge42/vlc
  • polter/vlc
  • hexchain/vlc
  • Tushwrld/vlc
  • mztea928/vlc
  • jbelloncastro/vlc
  • alvinhochun/vlc
  • ghostpiratecrow/vlc
  • ujjwaltwitx/vlc
  • alexsonarin06/vlc
  • adrianbon76/vlc
  • altsod/vlc
  • damien.lucas44/vlc
  • dmytrivtaisa/vlc
  • utk202/vlc
  • aaxhrj/vlc
  • thomas.hermes/vlc
  • structurenewworldorder/vlc
  • slomo/vlc
  • wantlamy/vlc
  • musc.o3cminc/vlc
  • thebarshablog/vlc
  • kerrick/vlc
  • kratos142518/vlc
  • leogps/vlc
  • vacantron/vlc
  • luna_koly/vlc
  • Ratio2/vlc
  • anuoshemohammad/vlc
  • apsun/vlc
  • aaa1115910/vlc
  • alimotmoyo/vlc
  • Ambossmann/vlc
  • Sam-LearnsToCode/vlc
  • Chilledheart/vlc
  • Labnann/vlc
  • ktcoooot1/vlc
  • mohit-marathe/vlc
  • johnddx/vlc
  • manstabuk/vlc
  • Omar-ahmed314/vlc
  • vineethkm/vlc
  • 9Enemi86/vlc
  • radoslav.m.panteleev/vlc
  • ashishami2002/vlc
  • Corbax/vlc
  • firnasahmed/vlc
  • pelayarmalam4/vlc
  • c0ff330k/vlc
  • shikhindahikar/vlc
  • l342723951/vlc
  • christianschwandner/vlc
  • douniwan5788/vlc
  • 7damian7/vlc
  • ferdnyc/vlc
  • f.ales1/vlc
  • pandagby/vlc
  • BaaBaa/vlc
  • jewe37/vlc
  • w00drow/vlc
  • russelltg/vlc
  • ironicallygod/vlc
  • soumyaDghosh/vlc
  • linzihao1999/vlc
  • deyayush6/vlc
  • mibi88/vlc
  • newabdallah10/vlc
  • jhorbincolombia/vlc
  • rimvihaqueshupto/vlc
  • andrewkhon98/vlc
  • fab78/vlc
  • lapaz17/vlc
  • amanna13/vlc
  • mdakram28/vlc
  • 07jw1980/vlc
  • sohamgupta/vlc
  • Eson-Jia1/vlc
  • Sumou/vlc
  • vikram-kangotra/vlc
  • chalice191/vlc
  • olivercalder/vlc
  • aaasg4001/vlc
  • zipdox/vlc
  • kwizart/vlc
  • Dragon-S/vlc
  • jdemeule/vlc
  • gabriel_lt/vlc
  • locutusofborg/vlc
  • sammirata/vlc-librist
  • another/vlc
  • Benjamin_Loison/vlc
  • ahmedmoselhi/vlc
  • petergaal/vlc
  • huynhsontung/vlc
  • dariusmihut/vlc
  • tvermaashutosh/vlc
  • buti/vlc
  • Niram7777/vlc
  • rohan-here/vlc
  • balaji-sivasakthi/vlc
  • rlindner81/vlc
  • Kakadus/vlc
  • Thrillseekr/vlc
  • ABBurmeister/vlc
  • craighuggins/vlc
  • orbea/vlc
  • maxos/vlc
  • aakarshmj/vlc
  • kblaschke/vlc
  • ankitm/vlc
  • advait-0/vlc
  • mohak2003/vlc
  • yselkowitz/vlc
  • AZM999/vlc-azm
  • andrey.turkin/vlc
  • Disha-Baghel/vlc
  • nowrep/vlc
  • Apeng/vlc
  • Choucroute_melba/vlc
  • autra/vlc
  • eclipseo/vlc
  • fhuber/vlc
  • olafhering/vlc
  • sdasda7777/vlc
  • 1div0/vlc
  • skosnits/vlc-extended-playlist-support
  • dnicolson/vlc
  • Timshel/vlc
  • octopols/vlc
  • MangalK/vlc
  • nima64/vlc
  • misawai/vlc
  • Alexander-Wilms/vlc
  • Maxime2/vlc-fork-for-visualizer
  • ww/vlc
  • jeske/vlc
  • sgross-emlix/vlc
  • morenonatural/vlc
  • freakingLovesVLC/vlc
  • borisgolovnev/vlc
  • mpromonet/vlc
  • diogo.simao-marques/vlc
  • masstock/vlc
  • pratikpatel8982/vlc
  • hugok79/vlc
  • longervision/vlc
  • abhiudaysurya/vlc
  • rishabhgarg/vlc
  • tumic/vlc
  • cart/vlc
  • shubham442/vlc
  • Aditya692005/vlc
  • sammirata/vlc4
  • syrykh/vlc
  • Vvorcun/macos-new-icon
  • AyaanshC/vlc
  • nasso/vlc
  • Quark/vlc
  • sebastinas/vlc
400 results
Show changes
Commits on Source (10)
Showing
with 463 additions and 547 deletions
......@@ -3086,6 +3086,7 @@ AC_ARG_ENABLE([libplacebo],
AS_HELP_STRING([--disable-libplacebo],
[disable libplacebo support (default auto)]))
have_libplacebo_glscale="no"
AS_IF([test "$enable_libplacebo" != "no"], [
PKG_CHECK_MODULES([LIBPLACEBO], [libplacebo >= 2.72], [
AC_DEFINE([HAVE_LIBPLACEBO], [1], [Define to 1 if libplacebo is enabled.])
......@@ -3093,6 +3094,10 @@ AS_IF([test "$enable_libplacebo" != "no"], [
AC_CHECK_HEADER([libplacebo/opengl.h], [
VLC_ADD_PLUGIN([placebo_gl])
VLC_ADD_PLUGIN([placebo_gles2])
dnl Minimum version that the OpenGL filter pl_scale is compatible with
PKG_CHECK_MODULES([LIBPLACEBO], [libplacebo >= 4.167],
[have_libplacebo_glscale="yes"],
[have_libplacebo_glscale="no"])
])
], [
AS_IF([test -n "${enable_libplacebo}"], [
......@@ -3102,11 +3107,7 @@ AS_IF([test "$enable_libplacebo" != "no"], [
])
])
AM_CONDITIONAL([HAVE_LIBPLACEBO], [test "$enable_libplacebo" != "no"])
dnl
dnl OpenGL filter pl_scale
dnl
PKG_HAVE_WITH_MODULES([LIBPLACEBO_SCALE], [libplacebo >= 4.167])
AM_CONDITIONAL([HAVE_LIBPLACEBO_SCALE], [test "$have_libplacebo_glscale" = "yes"])
dnl
dnl OpenGL
......
From da0990bf05e3433aa21c50e6a62f33fe6649b417 Mon Sep 17 00:00:00 2001
From: Niklas Haas <git@haasn.xyz>
Date: Fri, 14 Dec 2018 14:16:10 +0100
Subject: [PATCH] Work-around meson prefix bug
Normally this is inferred from the environment's CFLAGS/LDFLAGS, but old
meson versions don't do this correctly. So work-around it by explicitly
including the prefix when searching for glslang.
---
src/meson.build | 23 +++++++++++++++--------
1 file changed, 15 insertions(+), 8 deletions(-)
diff --git a/src/meson.build b/src/meson.build
index 411ce2c..bc9214a 100644
--- a/src/meson.build
+++ b/src/meson.build
@@ -48,6 +48,11 @@ glslang_combined = disabler()
glslang_min_ver = 2763
glslang_req = get_option('glslang')
+# fix build inside contrib dir (cf. meson issue #4597)
+prefix_option = get_option('prefix')
+prefix_lib = prefix_option + '/lib'
+prefix_include = include_directories(prefix_option + '/include')
+
if glslang_req.auto() and shaderc.found()
# we only need one or the other, and shaderc is preferred
@@ -58,12 +63,12 @@ if glslang_req.auto() and shaderc.found()
else
glslang_deps = [
- cxx.find_library('glslang', required: glslang_req),
- cxx.find_library('HLSL', required: glslang_req),
- cxx.find_library('OGLCompiler', required: glslang_req),
- cxx.find_library('OSDependent', required: glslang_req),
- cxx.find_library('SPIRV', required: glslang_req),
- cxx.find_library('SPVRemapper', required: glslang_req),
+ cxx.find_library('glslang', dirs: prefix_lib, required: glslang_req),
+ cxx.find_library('HLSL', dirs: prefix_lib, required: glslang_req),
+ cxx.find_library('OGLCompiler', dirs: prefix_lib, required: glslang_req),
+ cxx.find_library('OSDependent', dirs: prefix_lib, required: glslang_req),
+ cxx.find_library('SPIRV', dirs: prefix_lib, required: glslang_req),
+ cxx.find_library('SPVRemapper', dirs: prefix_lib, required: glslang_req),
]
glslang_found = true
@@ -75,7 +80,8 @@ endif
if glslang_found
glslang_ver = cxx.get_define('GLSLANG_PATCH_LEVEL',
- prefix: '#include <glslang/Include/revision.h>'
+ prefix: '#include <glslang/Include/revision.h>',
+ include_directories : prefix_include
).to_int()
if glslang_ver >= glslang_min_ver
@@ -85,7 +91,8 @@ if glslang_found
# -pthread) doesn't work. We actually need -lpthreads for the glslang
# object files to link, for whatever weird reason.
pthread = cxx.find_library('pthread', required: false)
- glslang_combined = declare_dependency(dependencies: glslang_deps + [pthread])
+ glslang_combined = declare_dependency(dependencies: glslang_deps + [pthread],
+ include_directories : prefix_include)
else
error('glslang revision @0@ too old! Must be at least @1@'
.format(glslang_ver, glslang_min_ver))
--
2.19.2
From db794a2fcc8214624c950752b04f6c23f8fc567d Mon Sep 17 00:00:00 2001
From: Niklas Haas <git@haasn.dev>
Date: Thu, 9 Jun 2022 21:32:36 +0200
Subject: [PATCH] vulkan: blacklist metal structs from utils_gen.py
Fixes https://code.videolan.org/videolan/libplacebo/-/issues/201
---
src/vulkan/utils_gen.py | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/vulkan/utils_gen.py b/src/vulkan/utils_gen.py
index da565d45..7c0dad37 100644
--- a/src/vulkan/utils_gen.py
+++ b/src/vulkan/utils_gen.py
@@ -158,7 +158,7 @@ def get_vkstructs(registry):
# Strings for platform-specific crap we want to blacklist as they will
# most likely cause build failures
blacklist_strs = [
- 'ANDROID', 'Surface', 'Win32', 'D3D12', 'GGP', 'FUCHSIA',
+ 'ANDROID', 'Surface', 'Win32', 'D3D12', 'GGP', 'FUCHSIA', 'Metal',
]
if any([ str in e.attrib['name'] for str in blacklist_strs ]):
--
2.36.1
From cce28e17f931c948c37467d9189ed96364691a83 Mon Sep 17 00:00:00 2001
From: Niklas Haas <git@haasn.dev>
Date: Mon, 4 Jul 2022 16:46:08 +0200
Subject: [PATCH] pl_thread: use gettimeofday() for back-compat
Some older platforms (particularly macOS) do not support
clock_gettime(). Fortunately, this is identical to gettimeofday in the
case of CLOCK_REALTIME.
These systems also do not have pthread_condattr_setclock, so we can
re-use this check.
Also add proper error handling to this function.
---
src/pl_thread_pthread.h | 12 ++++++++++--
1 file changed, 10 insertions(+), 2 deletions(-)
diff --git a/src/pl_thread_pthread.h b/src/pl_thread_pthread.h
index e48f50fd..075a8305 100644
--- a/src/pl_thread_pthread.h
+++ b/src/pl_thread_pthread.h
@@ -17,7 +17,9 @@
#pragma once
+#include <errno.h>
#include <pthread.h>
+#include <sys/time.h>
#include <time.h>
typedef pthread_mutex_t pl_mutex;
@@ -92,10 +94,16 @@ static inline int pl_cond_timedwait(pl_cond *cond, pl_mutex *mutex, uint64_t tim
struct timespec ts;
#ifdef PTHREAD_HAS_SETCLOCK
- clock_gettime(CLOCK_MONOTONIC, &ts);
+ if (clock_gettime(CLOCK_MONOTONIC, &ts) < 0)
+ return errno;
#else
- clock_gettime(CLOCK_REALTIME, &ts);
+ struct timeval tv;
+ if (gettimeofday(&tv, NULL) < 0) // equivalent to CLOCK_REALTIME
+ return errno;
+ ts.tv_sec = tv.tv_sec;
+ ts.tv_nsec = tv.tv_usec * 1000;
#endif
+
ts.tv_sec += timeout / 1000000000LLU;
ts.tv_nsec += timeout % 1000000000LLU;
--
2.36.1
From cac77b6674b479788cd688f1aee62a764cfbbb41 Mon Sep 17 00:00:00 2001
From: Niklas Haas <git@haasn.dev>
Date: Fri, 8 Jul 2022 22:41:10 +0200
Subject: [PATCH] glsl: glslang back compat
This include path randomly changed at some point in time.
---
src/glsl/glslang.cc | 11 ++++++++---
1 file changed, 8 insertions(+), 3 deletions(-)
diff --git a/src/glsl/glslang.cc b/src/glsl/glslang.cc
index ba16458d..a9b34f64 100644
--- a/src/glsl/glslang.cc
+++ b/src/glsl/glslang.cc
@@ -26,15 +26,20 @@ extern "C" {
#include <glslang/Include/ResourceLimits.h>
#include <glslang/Public/ShaderLang.h>
-#include <glslang/SPIRV/GlslangToSpv.h>
-
-#include "glslang.h"
#define GLSLANG_VERSION_CHECK(major, minor, patch) \
(((major) < GLSLANG_VERSION_MAJOR) || ((major) == GLSLANG_VERSION_MAJOR && \
(((minor) < GLSLANG_VERSION_MINOR) || ((minor) == GLSLANG_VERSION_MINOR && \
((patch) <= GLSLANG_VERSION_PATCH)))))
+#if GLSLANG_VERSION_CHECK(0, 0, 3496)
+#include <glslang/SPIRV/GlslangToSpv.h>
+#else
+#include <SPIRV/GlslangToSpv.h>
+#endif
+
+#include "glslang.h"
+
using namespace glslang;
static pthread_mutex_t pl_glslang_mutex = PTHREAD_MUTEX_INITIALIZER;
--
2.36.1
a2ca4a8b2bf9e5242c39c704e579575ccbfd0a7dadc4f73fe1994abb6e3f132d19f6d95415704a62e285e3f94e7b0ab8aeed14b4fce466df1ba34952f7127686 libplacebo-v1.18.0.tar.gz
780dff60a31a9c7fff47522385235077cc6b1a38be32bc0276c090d89ce25754dd0b910db5be631d0065337fe4700f68adabee06f48a4935d422f09f2e0e5525 libplacebo-v4.192.1.tar.gz
# libplacebo
PLACEBO_VERSION := 1.18.0
PLACEBO_VERSION := 4.192.1
PLACEBO_ARCHIVE = libplacebo-v$(PLACEBO_VERSION).tar.gz
PLACEBO_URL := https://code.videolan.org/videolan/libplacebo/-/archive/v$(PLACEBO_VERSION)/$(PLACEBO_ARCHIVE)
PLACEBOCONF := -Dglslang=enabled \
-Dshaderc=disabled \
-Ddemos=false \
-Dtests=false
DEPS_libplacebo = glslang
ifndef HAVE_WINSTORE
PKGS += libplacebo
endif
ifeq ($(call need_pkg,"libplacebo >= 1.18"),)
ifeq ($(call need_pkg,"libplacebo >= 2.72"),)
PKGS_FOUND += libplacebo
endif
......@@ -19,15 +24,9 @@ endif
# We don't want vulkan on darwin for now
ifndef HAVE_DARWIN_OS
# This should be enabled on Linux too, but it currently fails picking xcb on
# cross-compilation setup. Test the raspbian build for instance of this issue.
ifndef HAVE_LINUX
DEPS_libplacebo += vulkan-loader $(DEPS_vulkan-loader) vulkan-headers $(DEPS_vulkan-headers)
PLACEBOCONF += -Dvulkan-registry=${PREFIX}/share/vulkan/registry/vk.xml
endif
endif
PLACEBOCONF := -Dglslang=enabled \
-Dshaderc=disabled
$(TARBALLS)/$(PLACEBO_ARCHIVE):
$(call download_pkg,$(PLACEBO_URL),libplacebo)
......@@ -36,7 +35,9 @@ $(TARBALLS)/$(PLACEBO_ARCHIVE):
libplacebo: $(PLACEBO_ARCHIVE) .sum-libplacebo
$(UNPACK)
$(APPLY) $(SRC)/libplacebo/0001-meson-fix-glslang-search-path.patch
$(APPLY) $(SRC)/libplacebo/0001-vulkan-blacklist-metal-structs-from-utils_gen.py.patch
$(APPLY) $(SRC)/libplacebo/0002-pl_thread-use-gettimeofday-for-back-compat.patch
$(APPLY) $(SRC)/libplacebo/0003-glsl-glslang-back-compat.patch
$(MOVE)
.libplacebo: libplacebo crossfile.meson
......
7472ec31fe74bc3a98303f668eb0c88bf4e4a93b1e3bcf4df2b20fe731cc2efd754d8b64e6507d8ee470841ee575c3092b2b20c4325a44e2e5cd830b7c7dc8ab Vulkan-Headers-1.1.127.tar.gz
b6f4459a55a7a0f83a17f9155cf201f4e832bde45a127efbfb0e1e5805fb813249e8ccb00b81285ff26fffed1fe0f33b14cdf41515c2b649204de54284e7bc60 Vulkan-Headers-1.3.219.tar.gz
VULKAN_HEADERS_VERSION := 1.1.127
VULKAN_HEADERS_VERSION := 1.3.219
VULKAN_HEADERS_URL := https://github.com/KhronosGroup/Vulkan-Headers/archive/v$(VULKAN_HEADERS_VERSION).tar.gz
DEPS_vulkan-headers =
......
--- a/loader/CMakeLists.txt 2018-05-16 14:05:33.046991100 +0300
+++ b/loader/CMakeLists.txt 2018-05-16 14:07:39.464013100 +0300
@@ -86,7 +86,7 @@
set(ASM_FAILURE_MSG "${ASM_FAILURE_MSG} extensions will suffer from a corrupted stack.")
if(WIN32)
enable_language(ASM_MASM)
- if(CMAKE_ASM_MASM_COMPILER_WORKS)
+ if (MSVC AND CMAKE_ASM_MASM_COMPILER_WORKS)
if(NOT CMAKE_CL_64)
set(CMAKE_ASM_MASM_FLAGS ${CMAKE_ASM_MASM_FLAGS} /safeseh)
endif()
--- a/loader/loader.c 2018-05-16 14:03:52.750814700 +0300
+++ b/loader/loader.c 2018-05-16 14:04:08.631642600 +0300
@@ -672,6 +672,10 @@
//
// *reg_data contains a string list of filenames as pointer.
// When done using the returned string list, the caller should free the pointer.
+#ifdef __MINGW32__
+#define CM_GETIDLIST_FILTER_PRESENT 0x00000100
+#define CM_GETIDLIST_FILTER_CLASS 0x00000200
+#endif
VkResult loaderGetDeviceRegistryFiles(const struct loader_instance *inst, char **reg_data, PDWORD reg_data_size,
LPCSTR value_name) {
static const wchar_t *softwareComponentGUID = L"{5c4c3332-344d-483c-8739-259e934c9cc8}";
--- a/loader/loader.rc
+++ b/loader/loader.rc
@@ -43,8 +43,6 @@
///////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////
-#include "winres.h"
-
#define VER_FILE_VERSION VERSION_MAJOR, VERSION_MINOR, VERSION_PATCH, VERSION_BUILDNO
#define STRINGIZE2(s) #s
@@ -77,7 +75,6 @@
#endif
FILEOS 0x00000L
- FILETYPE VFT_DLL
FILESUBTYPE 0x0L
BEGIN
BLOCK "StringFileInfo"
diff -Naur Vulkan-LoaderAndValidationLayers-sdk-1.0.46.0-orig/CMakeLists.txt Vulkan-LoaderAndValidationLayers-sdk-1.0.46.0/CMakeLists.txt
--- Vulkan-LoaderAndValidationLayers-sdk-1.0.46.0-orig/CMakeLists.txt 2017-04-05 00:36:39.000000000 +0300
+++ Vulkan-LoaderAndValidationLayers-sdk-1.0.46.0/CMakeLists.txt 2017-06-29 08:34:52.393725000 +0300
@@ -153,6 +153,16 @@
diff --git a/loader/CMakeLists.txt b/loader/CMakeLists.txt
index 8bb10fd..fc38ecc 100644
--- a/loader/CMakeLists.txt
+++ b/loader/CMakeLists.txt
@@ -127,7 +127,7 @@ set(ASM_FAILURE_MSG "${ASM_FAILURE_MSG}Note that this may be unsafe, as the C co
set(ASM_FAILURE_MSG "${ASM_FAILURE_MSG} the stack frame for certain calls. If the compiler does not do this, then unknown device")
set(ASM_FAILURE_MSG "${ASM_FAILURE_MSG} extensions will suffer from a corrupted stack.")
if(WIN32)
- if(MINGW)
+ if(NOT MINGW)
find_program(JWASM_FOUND jwasm)
if (JWASM_FOUND)
set(CMAKE_ASM_MASM_COMPILER ${JWASM_FOUND})
@@ -145,7 +145,7 @@ if(WIN32)
if (USE_MASM)
enable_language(ASM_MASM)
endif ()
- if(CMAKE_ASM_MASM_COMPILER_WORKS OR JWASM_FOUND)
+ if(MSVC AND CMAKE_ASM_MASM_COMPILER_WORKS OR JWASM_FOUND)
if(MINGW)
set(CMAKE_ASM_MASM_FLAGS ${CMAKE_ASM_MASM_FLAGS} ${JWASM_FLAGS})
elseif(NOT CMAKE_CL_64 AND NOT JWASM_FOUND)
@@ -161,12 +161,14 @@ if(WIN32)
target_link_libraries(loader-unknown-chain Vulkan::Headers)
target_include_directories(loader-unknown-chain PUBLIC $<TARGET_PROPERTY:loader_asm_gen_files,BINARY_DIR>)
add_dependencies(loader-unknown-chain loader_asm_gen_files)
+ set_target_properties(loader-unknown-chain PROPERTIES DEFINE_SYMBOL "VK_BUILDING_DLL")
else()
message(WARNING "Could not find working MASM assebler\n${ASM_FAILURE_MSG}")
add_custom_target(loader_asm_gen_files)
add_library(loader-unknown-chain OBJECT unknown_ext_chain.c)
target_link_libraries(loader-unknown-chain loader_specific_options)
set_target_properties(loader-unknown-chain PROPERTIES CMAKE_C_FLAGS_DEBUG "${MODIFIED_C_FLAGS_DEBUG}")
+ set_target_properties(loader-unknown-chain PROPERTIES DEFINE_SYMBOL "VK_BUILDING_DLL")
endif()
endif()
+if (WIN32)
+ if(${CMAKE_SIZEOF_VOID_P} EQUAL 8)
+ set(DEFFILE_SUFFIX "")
+ set(WINBITS Win64)
+ else()
+ set(DEFFILE_SUFFIX "-x86")
+ set(WINBITS Win32)
+ endif()
+endif()
+
if(MSVC)
# /WX: Treat warnings as errors
# /GR-: Disable RTTI
diff -Naur Vulkan-LoaderAndValidationLayers-sdk-1.0.46.0-orig/loader/CMakeLists.txt Vulkan-LoaderAndValidationLayers-sdk-1.0.46.0/loader/CMakeLists.txt
--- Vulkan-LoaderAndValidationLayers-sdk-1.0.46.0-orig/loader/CMakeLists.txt 2017-06-29 08:19:36.448133100 +0300
+++ Vulkan-LoaderAndValidationLayers-sdk-1.0.46.0/loader/CMakeLists.txt 2017-06-29 08:42:41.322355600 +0300
@@ -137,6 +137,7 @@
set_target_properties(loader_gen_files PROPERTIES FOLDER ${LOADER_HELPER_FOLDER})
elseif(APPLE)
# For MacOS, use the C code and force the compiler's tail-call optimization instead of using assembly code.
@@ -261,6 +263,7 @@ endif()
if(WIN32)
add_library(loader-opt STATIC ${OPT_LOADER_SRCS})
+ set_target_properties(loader-opt PROPERTIES DEFINE_SYMBOL "VK_BUILDING_DLL")
target_link_libraries(loader-opt PUBLIC loader_specific_options)
add_dependencies(loader-opt loader_asm_gen_files)
set_target_properties(loader-opt PROPERTIES CMAKE_C_FLAGS_DEBUG "${MODIFIED_C_FLAGS_DEBUG}")
@@ -237,10 +240,17 @@ if(WIN32)
# when adding the suffix the import and runtime library names must be consistent
# mingw: libvulkan-1.dll.a / libvulkan-1.dll
# msvc: vulkan-1.lib / vulkan-1.dll
+ if(MSVC)
# Use static MSVCRT libraries
foreach(configuration
in
@@ -156,6 +157,7 @@
"${${configuration}}")
endif()
endforeach()
set_target_properties(vulkan
PROPERTIES
OUTPUT_NAME vulkan-1)
-
+ else()
+ set_target_properties(vulkan
+ PROPERTIES
+ LIBRARY_OUTPUT_NAME vulkan
+ RUNTIME_OUTPUT_NAME vulkan-1
+ ARCHIVE_OUTPUT_NAME vulkan)
+ endif()
if(ENABLE_WIN10_ONECORE)
# Note: When linking your app or driver to OneCore.lib, be sure to remove any links to non-umbrella libs (such as
@@ -190,24 +192,32 @@
$<TARGET_OBJECTS:loader-opt>
$<TARGET_OBJECTS:loader-norm>
$<TARGET_OBJECTS:loader-unknown-chain>
- ${CMAKE_CURRENT_SOURCE_DIR}/vulkan-1.def
+ ${CMAKE_CURRENT_SOURCE_DIR}/vulkan-1${DEFFILE_SUFFIX}.def
${CMAKE_CURRENT_SOURCE_DIR}/loader.rc)
+ if(MSVC)
set_target_properties(vulkan
PROPERTIES LINK_FLAGS_DEBUG
"/ignore:4098"
OUTPUT_NAME
vulkan-1)
+ else()
+ set_target_properties(vulkan
+ PROPERTIES
+ LIBRARY_OUTPUT_NAME vulkan
+ RUNTIME_OUTPUT_NAME vulkan-1
+ ARCHIVE_OUTPUT_NAME vulkan)
+ endif()
target_link_libraries(vulkan Vulkan::Headers)
else()
add_library(vulkan
STATIC
$<TARGET_OBJECTS:loader-opt>
$<TARGET_OBJECTS:loader-norm>
$<TARGET_OBJECTS:loader-unknown-chain>)
set_target_properties(vulkan PROPERTIES OUTPUT_NAME VKstatic.1)
endif()
- if(ENABLE_WIN10_ONECORE)
+ if(ENABLE_WIN10_ONECORE AND MSVC)
if(MSVC AND ENABLE_WIN10_ONECORE)
target_link_libraries(vulkan OneCoreUAP.lib LIBCMT.LIB LIBCMTD.LIB LIBVCRUNTIME.LIB LIBUCRT.LIB)
set_target_properties(vulkan PROPERTIES LINK_FLAGS "/NODEFAULTLIB")
else()
--- Vulkan-LoaderAndValidationLayers-sdk-1.1.73.0/loader/vulkan-1.def.orig 2018-05-16 11:55:36.673944400 +0300
+++ Vulkan-LoaderAndValidationLayers-sdk-1.1.73.0/loader/vulkan-1.def 2018-05-16 11:55:41.307152500 +0300
@@ -21,7 +21,7 @@
diff --git a/loader/vk_loader_platform.h b/loader/vk_loader_platform.h
index 507a901..6b8fc48 100644
--- a/loader/vk_loader_platform.h
+++ b/loader/vk_loader_platform.h
@@ -77,7 +77,13 @@
#include "vk_layer_dispatch_table.h"
#include "vk_loader_extensions.h"
-#if defined(__GNUC__) && __GNUC__ >= 4
+#if defined(_WIN32)
+# if defined (VK_BUILDING_DLL)
+# define LOADER_EXPORT __declspec(dllexport)
+# else
+# define LOADER_EXPORT
+# endif
+#elif defined(__GNUC__) && __GNUC__ >= 4
#define LOADER_EXPORT __attribute__((visibility("default")))
#elif defined(__SUNPRO_C) && (__SUNPRO_C >= 0x590)
#define LOADER_EXPORT __attribute__((visibility("default")))
diff --git a/loader/vulkan-1.def b/loader/vulkan-1.def
index 6a88b55..1d26b1f 100644
--- a/loader/vulkan-1.def
+++ b/loader/vulkan-1.def
@@ -22,7 +22,7 @@
;
;;;; End Copyright Notice ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
......@@ -83,319 +94,3 @@ diff -Naur Vulkan-LoaderAndValidationLayers-sdk-1.0.46.0-orig/loader/CMakeLists.
EXPORTS
vkCreateInstance
vkDestroyInstance
diff -Naur Vulkan-LoaderAndValidationLayers-sdk-1.0.46.0-orig/loader/vulkan-1-x86.def Vulkan-LoaderAndValidationLayers-sdk-1.0.46.0/loader/vulkan-1-x86.def
--- Vulkan-LoaderAndValidationLayers-sdk-1.0.46.0-orig/loader/vulkan-1-x86.def 1970-01-01 03:00:00.000000000 +0300
+++ Vulkan-LoaderAndValidationLayers-sdk-1.0.46.0/loader/vulkan-1-x86.def 2017-04-05 00:36:39.000000000 +0300
@@ -0,0 +1,221 @@
+
+;;;; Begin Copyright Notice ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
+;
+; Copyright (c) 2015-2017 The Khronos Group Inc.
+; Copyright (c) 2015-2017 Valve Corporation
+; Copyright (c) 2015-2017 LunarG, Inc.
+;
+; Licensed under the Apache License, Version 2.0 (the "License");
+; you may not use this file except in compliance with the License.
+; You may obtain a copy of the License at
+;
+; http://www.apache.org/licenses/LICENSE-2.0
+;
+; Unless required by applicable law or agreed to in writing, software
+; distributed under the License is distributed on an "AS IS" BASIS,
+; WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+; See the License for the specific language governing permissions and
+; limitations under the License.
+;
+; Author: Courtney Goeltzenleuchter <courtney@LunarG.com>
+;
+;;;; End Copyright Notice ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
+
+LIBRARY libvulkan-1.dll
+EXPORTS
+ vkCreateInstance@12
+ vkDestroyInstance@8
+ vkEnumeratePhysicalDevices@12
+ vkGetPhysicalDeviceFeatures@8
+ vkGetPhysicalDeviceFormatProperties@12
+ vkGetPhysicalDeviceImageFormatProperties@28
+ vkGetPhysicalDeviceProperties@8
+ vkGetPhysicalDeviceQueueFamilyProperties@12
+ vkGetPhysicalDeviceMemoryProperties@8
+ vkGetInstanceProcAddr@8
+ vkGetDeviceProcAddr@8
+ vkCreateDevice@16
+ vkDestroyDevice@8
+ vkEnumerateInstanceExtensionProperties@12
+ vkEnumerateDeviceExtensionProperties@16
+ vkEnumerateInstanceLayerProperties@8
+ vkEnumerateDeviceLayerProperties@12
+ vkGetDeviceQueue@16
+ vkQueueSubmit@20
+ vkQueueWaitIdle@4
+ vkDeviceWaitIdle@4
+ vkAllocateMemory@16
+ vkFreeMemory@16
+ vkMapMemory@36
+ vkUnmapMemory@12
+ vkFlushMappedMemoryRanges@12
+ vkInvalidateMappedMemoryRanges@12
+ vkGetDeviceMemoryCommitment@16
+ vkBindBufferMemory@28
+ vkBindImageMemory@28
+ vkGetBufferMemoryRequirements@16
+ vkGetImageMemoryRequirements@16
+ vkGetImageSparseMemoryRequirements@20
+ vkGetPhysicalDeviceSparseImageFormatProperties@32
+ vkQueueBindSparse@20
+ vkCreateFence@16
+ vkDestroyFence@16
+ vkResetFences@12
+ vkGetFenceStatus@12
+ vkWaitForFences@24
+ vkCreateSemaphore@16
+ vkDestroySemaphore@16
+ vkCreateEvent@16
+ vkDestroyEvent@16
+ vkGetEventStatus@12
+ vkSetEvent@12
+ vkResetEvent@12
+ vkCreateQueryPool@16
+ vkDestroyQueryPool@16
+ vkGetQueryPoolResults@40
+ vkCreateBuffer@16
+ vkDestroyBuffer@16
+ vkCreateBufferView@16
+ vkDestroyBufferView@16
+ vkCreateImage@16
+ vkDestroyImage@16
+ vkGetImageSubresourceLayout@20
+ vkCreateImageView@16
+ vkDestroyImageView@16
+ vkCreateShaderModule@16
+ vkDestroyShaderModule@16
+ vkCreatePipelineCache@16
+ vkDestroyPipelineCache@16
+ vkGetPipelineCacheData@20
+ vkMergePipelineCaches@20
+ vkCreateGraphicsPipelines@28
+ vkCreateComputePipelines@28
+ vkDestroyPipeline@16
+ vkCreatePipelineLayout@16
+ vkDestroyPipelineLayout@16
+ vkCreateSampler@16
+ vkDestroySampler@16
+ vkCreateDescriptorSetLayout@16
+ vkDestroyDescriptorSetLayout@16
+ vkCreateDescriptorPool@16
+ vkDestroyDescriptorPool@16
+ vkResetDescriptorPool@16
+ vkAllocateDescriptorSets@12
+ vkFreeDescriptorSets@20
+ vkUpdateDescriptorSets@20
+ vkCreateFramebuffer@16
+ vkDestroyFramebuffer@16
+ vkCreateRenderPass@16
+ vkDestroyRenderPass@16
+ vkGetRenderAreaGranularity@16
+ vkCreateCommandPool@16
+ vkDestroyCommandPool@16
+ vkResetCommandPool@16
+ vkAllocateCommandBuffers@12
+ vkFreeCommandBuffers@20
+ vkBeginCommandBuffer@8
+ vkEndCommandBuffer@4
+ vkResetCommandBuffer@8
+ vkCmdBindPipeline@16
+ vkCmdSetViewport@16
+ vkCmdSetScissor@16
+ vkCmdSetLineWidth@8
+ vkCmdSetDepthBias@16
+ vkCmdSetBlendConstants@8
+ vkCmdSetDepthBounds@12
+ vkCmdSetStencilCompareMask@12
+ vkCmdSetStencilWriteMask@12
+ vkCmdSetStencilReference@12
+ vkCmdBindDescriptorSets@36
+ vkCmdBindIndexBuffer@24
+ vkCmdBindVertexBuffers@20
+ vkCmdDraw@20
+ vkCmdDrawIndexed@24
+ vkCmdDrawIndirect@28
+ vkCmdDrawIndexedIndirect@28
+ vkCmdDispatch@16
+ vkCmdDispatchIndirect@20
+ vkCmdCopyBuffer@28
+ vkCmdCopyImage@36
+ vkCmdBlitImage@40
+ vkCmdCopyBufferToImage@32
+ vkCmdCopyImageToBuffer@32
+ vkCmdUpdateBuffer@32
+ vkCmdFillBuffer@32
+ vkCmdClearColorImage@28
+ vkCmdClearDepthStencilImage@28
+ vkCmdClearAttachments@20
+ vkCmdResolveImage@36
+ vkCmdSetEvent@16
+ vkCmdResetEvent@16
+ vkCmdWaitEvents@44
+ vkCmdPipelineBarrier@40
+ vkCmdBeginQuery@20
+ vkCmdEndQuery@16
+ vkCmdResetQueryPool@20
+ vkCmdWriteTimestamp@20
+ vkCmdCopyQueryPoolResults@48
+ vkCmdPushConstants@28
+ vkCmdBeginRenderPass@12
+ vkCmdNextSubpass@8
+ vkCmdEndRenderPass@4
+ vkCmdExecuteCommands@12
+ vkDestroySurfaceKHR@16
+ vkGetPhysicalDeviceSurfaceSupportKHR@20
+ vkGetPhysicalDeviceSurfaceCapabilitiesKHR@16
+ vkGetPhysicalDeviceSurfaceFormatsKHR@20
+ vkGetPhysicalDeviceSurfacePresentModesKHR@20
+ vkCreateSwapchainKHR@16
+ vkDestroySwapchainKHR@16
+ vkGetSwapchainImagesKHR@20
+ vkAcquireNextImageKHR@40
+ vkQueuePresentKHR@8
+ vkGetPhysicalDeviceDisplayPropertiesKHR@12
+ vkGetPhysicalDeviceDisplayPlanePropertiesKHR@12
+ vkGetDisplayPlaneSupportedDisplaysKHR@16
+ vkGetDisplayModePropertiesKHR@20
+ vkCreateDisplayModeKHR@24
+ vkGetDisplayPlaneCapabilitiesKHR@20
+ vkCreateDisplayPlaneSurfaceKHR@16
+ vkCreateSharedSwapchainsKHR@20
+ vkCreateWin32SurfaceKHR@16
+ vkGetPhysicalDeviceWin32PresentationSupportKHR@8
+
+ vkEnumerateInstanceVersion@4
+ vkEnumeratePhysicalDeviceGroups@12
+ vkGetPhysicalDeviceFeatures2@8
+ vkGetPhysicalDeviceProperties2@8
+ vkGetPhysicalDeviceFormatProperties2@12
+ vkGetPhysicalDeviceQueueFamilyProperties2@12
+ vkGetPhysicalDeviceMemoryProperties2@8
+ vkGetPhysicalDeviceSparseImageFormatProperties2@16
+ vkGetPhysicalDeviceExternalBufferProperties@12
+ vkGetPhysicalDeviceExternalSemaphoreProperties@12
+ vkGetPhysicalDeviceExternalFenceProperties@12
+ vkBindBufferMemory2@12
+ vkBindImageMemory2@12
+ vkGetDeviceGroupPeerMemoryFeatures@20
+ vkCmdSetDeviceMask@8
+ vkCmdDispatchBase@28
+ vkGetImageMemoryRequirements2@12
+ vkGetBufferMemoryRequirements2@12
+ vkTrimCommandPool@16
+ vkGetDeviceQueue2@12
+ vkCreateSamplerYcbcrConversion@16
+ vkDestroySamplerYcbcrConversion@16
+ vkGetDescriptorSetLayoutSupport@12
+ vkGetDeviceGroupPresentCapabilitiesKHR@8
+ vkGetDeviceGroupSurfacePresentModesKHR@16
+ vkGetPhysicalDevicePresentRectanglesKHR@20
+ vkAcquireNextImage2KHR@12
+ vkCreateDescriptorUpdateTemplate@16
+ vkDestroyDescriptorUpdateTemplate@16
+ vkUpdateDescriptorSetWithTemplate@24
+
+ vkGetPhysicalDeviceDisplayProperties2KHR@12
+ vkGetPhysicalDeviceDisplayPlaneProperties2KHR@12
+ vkGetDisplayModeProperties2KHR@20
+ vkGetDisplayPlaneCapabilities2KHR@12
+
+ vkGetImageSparseMemoryRequirements2@16
+ vkGetPhysicalDeviceImageFormatProperties2@12
diff -Naur Vulkan-LoaderAndValidationLayers-sdk-1.0.46.0-orig/tests/layers/CMakeLists.txt Vulkan-LoaderAndValidationLayers-sdk-1.0.46.0/tests/layers/CMakeLists.txt
--- Vulkan-LoaderAndValidationLayers-sdk-1.1.73.0-orig/tests/layers/CMakeLists.txt 2017-04-05 00:36:39.000000000 +0300
+++ Vulkan-LoaderAndValidationLayers-sdk-1.1.73.0/tests/layers/CMakeLists.txt 2017-06-29 08:39:07.115088000 +0300
@@ -19,12 +19,12 @@
if(WIN32)
macro(AddVkLayer target)
- file(TO_NATIVE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/VkLayer_${target}.def DEF_FILE)
+ file(TO_NATIVE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/VkLayer_${target}${DEFFILE_SUFFIX}.def DEF_FILE)
add_custom_target(copy-${target}-def-file ALL
- COMMAND ${CMAKE_COMMAND} -E copy_if_different ${DEF_FILE} VkLayer_${target}.def
+ COMMAND ${CMAKE_COMMAND} -E copy_if_different ${DEF_FILE} VkLayer_${target}${DEFFILE_SUFFIX}.def
VERBATIM)
set_target_properties(copy-${target}-def-file PROPERTIES FOLDER ${LOADER_HELPER_FOLDER})
- add_library(VkLayer_${target} SHARED ${ARGN} VkLayer_${target}.def)
+ add_library(VkLayer_${target} SHARED ${ARGN} VkLayer_${target}${DEFFILE_SUFFIX}.def)
target_compile_options(VkLayer_${target} PUBLIC ${MSVC_LOADER_COMPILE_OPTIONS})
add_dependencies(VkLayer_${target} generate_helper_files)
endmacro()
diff -Naur Vulkan-LoaderAndValidationLayers-sdk-1.0.46.0-orig/tests/layers/VkLayer_test-x86.def Vulkan-LoaderAndValidationLayers-sdk-1.0.46.0/tests/layers/VkLayer_test-x86.def
--- Vulkan-LoaderAndValidationLayers-sdk-1.0.46.0-orig/tests/layers/VkLayer_test-x86.def 1970-01-01 03:00:00.000000000 +0300
+++ Vulkan-LoaderAndValidationLayers-sdk-1.0.46.0/tests/layers/VkLayer_test-x86.def 2017-04-05 00:36:39.000000000 +0300
@@ -0,0 +1,32 @@
+; THIS FILE IS GENERATED. DO NOT EDIT.
+
+;;;; Begin Copyright Notice ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
+; Vulkan
+;
+; Copyright (c) 2015-2016 The Khronos Group Inc.
+; Copyright (c) 2015-2016 Valve Corporation
+; Copyright (c) 2015-2016 LunarG, Inc.
+;
+; Licensed under the Apache License, Version 2.0 (the "License");
+; you may not use this file except in compliance with the License.
+; You may obtain a copy of the License at
+;
+; http://www.apache.org/licenses/LICENSE-2.0
+;
+; Unless required by applicable law or agreed to in writing, software
+; distributed under the License is distributed on an "AS IS" BASIS,
+; WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+; See the License for the specific language governing permissions and
+; limitations under the License.
+;
+; Author: Courtney Goeltzenleuchter <courtney@LunarG.com>
+;;;; End Copyright Notice ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
+
+; The following is required on Windows, for exporting symbols from the DLL
+
+LIBRARY VkLayer_test
+EXPORTS
+vkGetInstanceProcAddr@8
+vkGetDeviceProcAddr@8
+vkEnumerateInstanceLayerProperties@8
+vkEnumerateInstanceExtensionProperties@12
diff -Naur Vulkan-LoaderAndValidationLayers-sdk-1.0.46.0-orig/tests/layers/VkLayer_wrap_objects-x86.def Vulkan-LoaderAndValidationLayers-sdk-1.0.46.0/tests/layers/VkLayer_wrap_objects-x86.def
--- Vulkan-LoaderAndValidationLayers-sdk-1.0.46.0-orig/tests/layers/VkLayer_wrap_objects-x86.def 1970-01-01 03:00:00.000000000 +0300
+++ Vulkan-LoaderAndValidationLayers-sdk-1.0.46.0/tests/layers/VkLayer_wrap_objects-x86.def 2017-04-05 00:36:39.000000000 +0300
@@ -0,0 +1,32 @@
+; THIS FILE IS GENERATED. DO NOT EDIT.
+
+;;;; Begin Copyright Notice ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
+; Vulkan
+;
+; Copyright (c) 2015-2016 The Khronos Group Inc.
+; Copyright (c) 2015-2016 Valve Corporation
+; Copyright (c) 2015-2016 LunarG, Inc.
+;
+; Licensed under the Apache License, Version 2.0 (the "License");
+; you may not use this file except in compliance with the License.
+; You may obtain a copy of the License at
+;
+; http://www.apache.org/licenses/LICENSE-2.0
+;
+; Unless required by applicable law or agreed to in writing, software
+; distributed under the License is distributed on an "AS IS" BASIS,
+; WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+; See the License for the specific language governing permissions and
+; limitations under the License.
+;
+; Author: Courtney Goeltzenleuchter <courtney@LunarG.com>
+;;;; End Copyright Notice ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
+
+; The following is required on Windows, for exporting symbols from the DLL
+
+LIBRARY VkLayer_wrap_objects
+EXPORTS
+vkGetInstanceProcAddr@8
+vkGetDeviceProcAddr@8
+vkEnumerateInstanceLayerProperties@8
+vkEnumerateInstanceExtensionProperties@12
diff -Naur Vulkan-LoaderAndValidationLayers-sdk-1.0.46.0-orig/loader/CMakeLists.txt Vulkan-LoaderAndValidationLayers-sdk-1.0.46.0/loader/CMakeLists.txt
--- Vulkan-LoaderAndValidationLayers-sdk-1.0.46.0-orig/loader/CMakeLists.txt 2017-06-29 08:19:36.448133100 +0300
+++ Vulkan-LoaderAndValidationLayers-sdk-1.0.46.0/loader/CMakeLists.txt 2017-06-29 08:42:41.322355600 +0300
@@ -286,6 +286,7 @@
if(INSTALL_LVL_FILES)
install(TARGETS ${API_LOWERCASE} LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR})
endif()
+endif()
if(NOT APPLE)
# Generate pkg-config file.
@@ -302,6 +302,5 @@
endif()
endif()
endif()
-endif()
--- a/loader/CMakeLists.txt
+++ b/loader/CMakeLists.txt
@@ -398,7 +398,7 @@
foreach(LIB ${CMAKE_CXX_IMPLICIT_LINK_LIBRARIES} ${PLATFORM_LIBS})
set(PRIVATE_LIBS "${PRIVATE_LIBS} -l${LIB}")
endforeach()
- if(WIN32)
+ if(MSVC)
set(VULKAN_LIB_SUFFIX "-1")
# Set libdir path as in cmake's FindVulkan.cmake
# https://github.com/KhronosGroup/Vulkan-Loader/issues/668
59afc74b83050bd21186dc7a58f7d39350796ddd4cfdf9975dcf7c5d525f1e318acd204dc2a796b6286d24c2b928c3ccaa76563ce2bfedcbcfeaf68e70a88116 Vulkan-Loader-1.1.127.tar.gz
b4c9716a0cb3d6748f69b91735e43a5fe51599f44c21f9c4d90e69daa05bddcfd354978e53e95d64cb6a6bcca640c48974d61893590ab443b230294d4668f245 Vulkan-Loader-1.3.211.tar.gz
;
; Definition file of vulkan-1.dll
; Automatic generated by gendef
; written by Kai Tietz 2008
;
LIBRARY "libvulkan-1.dll"
EXPORTS
vkAcquireNextImage2KHR@12
vkAcquireNextImageKHR@40
vkAllocateCommandBuffers@12
vkAllocateDescriptorSets@12
vkAllocateMemory@16
vkBeginCommandBuffer@8
vkBindBufferMemory2@12
vkBindBufferMemory@28
vkBindImageMemory2@12
vkBindImageMemory@28
vkCmdBeginQuery@20
vkCmdBeginRenderPass2@12
vkCmdBeginRenderPass@12
vkCmdBindDescriptorSets@36
vkCmdBindIndexBuffer@24
vkCmdBindPipeline@16
vkCmdBindVertexBuffers@20
vkCmdBlitImage@40
vkCmdClearAttachments@20
vkCmdClearColorImage@28
vkCmdClearDepthStencilImage@28
vkCmdCopyBuffer@28
vkCmdCopyBufferToImage@32
vkCmdCopyImage@36
vkCmdCopyImageToBuffer@32
vkCmdCopyQueryPoolResults@48
vkCmdDispatch@16
vkCmdDispatchBase@28
vkCmdDispatchIndirect@20
vkCmdDraw@20
vkCmdDrawIndexed@24
vkCmdDrawIndexedIndirect@28
vkCmdDrawIndexedIndirectCount@44
vkCmdDrawIndirect@28
vkCmdDrawIndirectCount@44
vkCmdEndQuery@16
vkCmdEndRenderPass2@8
vkCmdEndRenderPass@4
vkCmdExecuteCommands@12
vkCmdFillBuffer@32
vkCmdNextSubpass2@12
vkCmdNextSubpass@8
vkCmdPipelineBarrier@40
vkCmdPushConstants@28
vkCmdResetEvent@16
vkCmdResetQueryPool@20
vkCmdResolveImage@36
vkCmdSetBlendConstants@8
vkCmdSetDepthBias@16
vkCmdSetDepthBounds@12
vkCmdSetDeviceMask@8
vkCmdSetEvent@16
vkCmdSetLineWidth@8
vkCmdSetScissor@16
vkCmdSetStencilCompareMask@12
vkCmdSetStencilReference@12
vkCmdSetStencilWriteMask@12
vkCmdSetViewport@16
vkCmdUpdateBuffer@32
vkCmdWaitEvents@44
vkCmdWriteTimestamp@20
vkCreateBuffer@16
vkCreateBufferView@16
vkCreateCommandPool@16
vkCreateComputePipelines@28
vkCreateDescriptorPool@16
vkCreateDescriptorSetLayout@16
vkCreateDescriptorUpdateTemplate@16
vkCreateDevice@16
vkCreateDisplayModeKHR@24
vkCreateDisplayPlaneSurfaceKHR@16
vkCreateEvent@16
vkCreateFence@16
vkCreateFramebuffer@16
vkCreateGraphicsPipelines@28
vkCreateHeadlessSurfaceEXT@16
vkCreateImage@16
vkCreateImageView@16
vkCreateInstance@12
vkCreatePipelineCache@16
vkCreatePipelineLayout@16
vkCreateQueryPool@16
vkCreateRenderPass2@16
vkCreateRenderPass@16
vkCreateSampler@16
vkCreateSamplerYcbcrConversion@16
vkCreateSemaphore@16
vkCreateShaderModule@16
vkCreateSharedSwapchainsKHR@20
vkCreateSwapchainKHR@16
vkCreateWin32SurfaceKHR@16
vkDestroyBuffer@16
vkDestroyBufferView@16
vkDestroyCommandPool@16
vkDestroyDescriptorPool@16
vkDestroyDescriptorSetLayout@16
vkDestroyDescriptorUpdateTemplate@16
vkDestroyDevice@8
vkDestroyEvent@16
vkDestroyFence@16
vkDestroyFramebuffer@16
vkDestroyImage@16
vkDestroyImageView@16
vkDestroyInstance@8
vkDestroyPipeline@16
vkDestroyPipelineCache@16
vkDestroyPipelineLayout@16
vkDestroyQueryPool@16
vkDestroyRenderPass@16
vkDestroySampler@16
vkDestroySamplerYcbcrConversion@16
vkDestroySemaphore@16
vkDestroyShaderModule@16
vkDestroySurfaceKHR@16
vkDestroySwapchainKHR@16
vkDeviceWaitIdle@4
vkEndCommandBuffer@4
vkEnumerateDeviceExtensionProperties@16
vkEnumerateDeviceLayerProperties@12
vkEnumerateInstanceExtensionProperties@12
vkEnumerateInstanceLayerProperties@8
vkEnumerateInstanceVersion@4
vkEnumeratePhysicalDeviceGroups@12
vkEnumeratePhysicalDevices@12
vkFlushMappedMemoryRanges@12
vkFreeCommandBuffers@20
vkFreeDescriptorSets@20
vkFreeMemory@16
vkGetBufferDeviceAddress@8
vkGetBufferMemoryRequirements2@12
vkGetBufferMemoryRequirements@16
vkGetBufferOpaqueCaptureAddress@8
vkGetDescriptorSetLayoutSupport@12
vkGetDeviceGroupPeerMemoryFeatures@20
vkGetDeviceGroupPresentCapabilitiesKHR@8
vkGetDeviceGroupSurfacePresentModesKHR@16
vkGetDeviceMemoryCommitment@16
vkGetDeviceMemoryOpaqueCaptureAddress@8
vkGetDeviceProcAddr@8
vkGetDeviceQueue2@12
vkGetDeviceQueue@16
vkGetDisplayModeProperties2KHR@20
vkGetDisplayModePropertiesKHR@20
vkGetDisplayPlaneCapabilities2KHR@12
vkGetDisplayPlaneCapabilitiesKHR@20
vkGetDisplayPlaneSupportedDisplaysKHR@16
vkGetEventStatus@12
vkGetFenceStatus@12
vkGetImageMemoryRequirements2@12
vkGetImageMemoryRequirements@16
vkGetImageSparseMemoryRequirements2@16
vkGetImageSparseMemoryRequirements@20
vkGetImageSubresourceLayout@20
vkGetInstanceProcAddr@8
vkGetPhysicalDeviceDisplayPlaneProperties2KHR@12
vkGetPhysicalDeviceDisplayPlanePropertiesKHR@12
vkGetPhysicalDeviceDisplayProperties2KHR@12
vkGetPhysicalDeviceDisplayPropertiesKHR@12
vkGetPhysicalDeviceExternalBufferProperties@12
vkGetPhysicalDeviceExternalFenceProperties@12
vkGetPhysicalDeviceExternalSemaphoreProperties@12
vkGetPhysicalDeviceFeatures2@8
vkGetPhysicalDeviceFeatures@8
vkGetPhysicalDeviceFormatProperties2@12
vkGetPhysicalDeviceFormatProperties@12
vkGetPhysicalDeviceImageFormatProperties2@12
vkGetPhysicalDeviceImageFormatProperties@28
vkGetPhysicalDeviceMemoryProperties2@8
vkGetPhysicalDeviceMemoryProperties@8
vkGetPhysicalDevicePresentRectanglesKHR@20
vkGetPhysicalDeviceProperties2@8
vkGetPhysicalDeviceProperties@8
vkGetPhysicalDeviceQueueFamilyProperties2@12
vkGetPhysicalDeviceQueueFamilyProperties@12
vkGetPhysicalDeviceSparseImageFormatProperties2@16
vkGetPhysicalDeviceSparseImageFormatProperties@32
vkGetPhysicalDeviceSurfaceCapabilities2KHR@12
vkGetPhysicalDeviceSurfaceCapabilitiesKHR@16
vkGetPhysicalDeviceSurfaceFormats2KHR@16
vkGetPhysicalDeviceSurfaceFormatsKHR@20
vkGetPhysicalDeviceSurfacePresentModesKHR@20
vkGetPhysicalDeviceSurfaceSupportKHR@20
vkGetPhysicalDeviceWin32PresentationSupportKHR@8
vkGetPipelineCacheData@20
vkGetQueryPoolResults@40
vkGetRenderAreaGranularity@16
vkGetSemaphoreCounterValue@16
vkGetSwapchainImagesKHR@20
vkInvalidateMappedMemoryRanges@12
vkMapMemory@36
vkMergePipelineCaches@20
vkQueueBindSparse@20
vkQueuePresentKHR@8
vkQueueSubmit@20
vkQueueWaitIdle@4
vkResetCommandBuffer@8
vkResetCommandPool@16
vkResetDescriptorPool@16
vkResetEvent@12
vkResetFences@12
vkResetQueryPool@20
vkSetEvent@12
vkSignalSemaphore@8
vkTrimCommandPool@16
vkUnmapMemory@12
vkUpdateDescriptorSetWithTemplate@24
vkUpdateDescriptorSets@20
vkWaitForFences@24
vkWaitSemaphores@16
VULKAN_LOADER_VERSION := 1.1.127
VULKAN_LOADER_VERSION := 1.3.211
VULKAN_LOADER_URL := https://github.com/KhronosGroup/Vulkan-Loader/archive/v$(VULKAN_LOADER_VERSION).tar.gz
DEPS_vulkan-loader = vulkan-headers $(DEPS_vulkan-headers)
......@@ -25,6 +25,7 @@ endif
VULKAN_LOADER_CONF := \
-DENABLE_STATIC_LOADER=ON \
-DBUILD_SHARED_LIBS=OFF \
-DENABLE_WERROR=OFF \
-DBUILD_TESTS=OFF \
-DBUILD_LOADER=ON \
-DCMAKE_ASM_COMPILER="$(AS)"
......@@ -38,9 +39,11 @@ vulkan-loader: Vulkan-Loader-$(VULKAN_LOADER_VERSION).tar.gz .sum-vulkan-loader
$(UNPACK)
# Patches are from msys2 package system
# https://github.com/msys2/MINGW-packages/tree/master/mingw-w64-vulkan-loader
$(APPLY) $(SRC)/vulkan-loader/001-build-fix.patch
$(APPLY) $(SRC)/vulkan-loader/002-proper-def-files-for-32bit.patch
$(APPLY) $(SRC)/vulkan-loader/003-generate-pkgconfig-files.patch
$(APPLY) $(SRC)/vulkan-loader/004-disable-suffix-in-static-lib.patch
ifeq ($(HOST),i686-w64-mingw32)
cp -v $(SRC)/vulkan-loader/libvulkan-32.def $(UNPACK_DIR)/loader/vulkan-1.def
endif
$(MOVE)
# Needed for the loader's cmake script to find the registry files
......@@ -55,8 +58,8 @@ VULKAN_LOADER_ENV_CONF = \
ifdef HAVE_WIN32
# CMake will generate a .pc file with -lvulkan even if the static library
# generated is libVKstatic.1.a. It also forget to link with libcfgmgr32.
cd $< && sed -i.orig -e "s,-lvulkan,-lVKstatic.1 -lcfgmgr32," build/loader/vulkan.pc
# generated is libvulkan.dll.a. It also forget to link with libcfgmgr32.
cd $< && sed -i.orig -e "s,-lvulkan,-lvulkan.dll -lcfgmgr32," build/loader/vulkan.pc
endif
$(call pkg_static,"build/loader/vulkan.pc")
......
......@@ -19,14 +19,14 @@ default:
- amd64
variables:
VLC_WIN32_IMAGE: registry.videolan.org/vlc-debian-win32:20220224135804
VLC_WIN64_IMAGE: registry.videolan.org/vlc-debian-win64:20220224144130
VLC_WIN_LLVM_IMAGE: registry.videolan.org/vlc-debian-llvm-mingw:20211020094514
VLC_WIN32_IMAGE: registry.videolan.org/vlc-debian-win32:20220505170026
VLC_WIN64_IMAGE: registry.videolan.org/vlc-debian-win64:20220505172436
VLC_WIN_LLVM_IMAGE: registry.videolan.org/vlc-debian-llvm-mingw:20220705072259
VLC_UWP_LLVM_IMAGE: registry.videolan.org/vlc-debian-llvm-uwp:20211020111246
VLC_DEBIAN_IMAGE: registry.videolan.org/vlc-debian-unstable:20210803114245
VLC_ANDROID_IMAGE: registry.videolan.org/vlc-debian-android:20210730131708
VLC_SNAP_IMAGE: registry.videolan.org/vlc-ubuntu-focal:20211020115724
VLC_RASPBIAN_IMAGE: registry.videolan.org/vlc-ubuntu-raspberry:20211006142322
VLC_ANDROID_IMAGE: registry.videolan.org/vlc-debian-android:20220505164734
VLC_SNAP_IMAGE: registry.videolan.org/vlc-ubuntu-focal:20220505174948
VLC_RASPBIAN_IMAGE: registry.videolan.org/vlc-ubuntu-raspberry:20220505175523
VLC_WASM_EMSCRIPTEN: registry.videolan.org/vlc-debian-wasm-emscripten:20210915101305
.variables-debian: &variables-debian
......