Commit 9948a6de authored by Thomas Guillem's avatar Thomas Guillem

contrib: libplacebo: update to 1.7.0-rc2

parent 381c61cf
From e4626984de40115af22041087936c3ad68401f75 Mon Sep 17 00:00:00 2001
From: Thomas Guillem <thomas@gllm.fr>
Date: Thu, 8 Nov 2018 10:09:19 +0100
Subject: [PATCH 1/2] build: fix lpthread dependency with glslang
"-pthread" is enough for a dynamic build. Indeed, the pthread API is used
within libplacebo, so the compiler know that it shoud link with pthread in that
case.
However, this may fail with static builds. If the code using libplacebo.a and
all glslang .a doesn't use the pthread API, the compiler won't link with
pthread. To work-around this issue, make libplacebo depends on -lpthread, if
present.
---
src/meson.build | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/src/meson.build b/src/meson.build
index 4d791c30d9..25b898b7a4 100644
--- a/src/meson.build
+++ b/src/meson.build
@@ -90,6 +90,7 @@ tests = [
glslang_combined = disabler()
glslang_min_ver = 2763
glslang_req = get_option('glslang')
+glslang_pthread_deps = []
glslang_deps = [
cxx.find_library('glslang', required: glslang_req),
cxx.find_library('HLSL', required: glslang_req),
@@ -105,12 +106,14 @@ foreach d : glslang_deps
endforeach
if glslang_found
+ glslang_pthread_deps += cxx.find_library('pthread', required: false)
+
glslang_ver = cxx.get_define('GLSLANG_PATCH_LEVEL',
prefix: '#include <glslang/Include/revision.h>'
).to_int()
if glslang_ver >= glslang_min_ver
- glslang_combined = declare_dependency(dependencies: glslang_deps)
+ glslang_combined = declare_dependency(dependencies: glslang_deps + glslang_pthread_deps)
else
error('glslang revision @0@ too old! Must be at least @1@'
.format(glslang_ver, glslang_min_ver))
--
2.19.1
From fd85596f1d684be20d383b7d6b01d19a6a576fdc Mon Sep 17 00:00:00 2001
From f3809023b90a8399dd40edadbd92c9d436b25842 Mon Sep 17 00:00:00 2001
From: Thomas Guillem <thomas@gllm.fr>
Date: Wed, 24 Oct 2018 10:28:55 +0200
Subject: [PATCH 2/2] meson: fix glslang search path
Subject: [PATCH] meson: fix glslang search path
---
src/meson.build | 24 ++++++++++++++++--------
1 file changed, 16 insertions(+), 8 deletions(-)
src/meson.build | 20 ++++++++++++++++++--
1 file changed, 18 insertions(+), 2 deletions(-)
diff --git a/src/meson.build b/src/meson.build
index 25b898b7a4..c63996f53f 100644
index be1f0aa..e558b06 100644
--- a/src/meson.build
+++ b/src/meson.build
@@ -25,6 +25,12 @@ build_opts = [
@@ -42,6 +42,12 @@ build_opts = [
]
link_args = []
......@@ -24,28 +24,24 @@ index 25b898b7a4..c63996f53f 100644
cc = meson.get_compiler('c')
cxx = meson.get_compiler('cpp')
@@ -92,12 +98,12 @@ glslang_min_ver = 2763
@@ -128,6 +134,14 @@ endif
glslang_combined = disabler()
glslang_min_ver = 2763
glslang_req = get_option('glslang')
glslang_pthread_deps = []
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),
+glslang_deps = [
+ 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),
]
+]
if glslang_req.auto() and shaderc.found()
glslang_found = true
@@ -109,11 +115,13 @@ if glslang_found
glslang_pthread_deps += cxx.find_library('pthread', required: false)
@@ -156,7 +170,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>',
......@@ -53,12 +49,16 @@ index 25b898b7a4..c63996f53f 100644
).to_int()
if glslang_ver >= glslang_min_ver
- glslang_combined = declare_dependency(dependencies: glslang_deps + glslang_pthread_deps)
+ glslang_combined = declare_dependency(dependencies: glslang_deps + glslang_pthread_deps,
@@ -166,7 +181,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.1
2.19.2
b15144f40bc0604e2e37449b96f9cb31a7da9970392d3746f18092e99d28891cdeb61458c2d5868fd7c6c3ecc5b37509a1dc2e3604345021cca2fbad513f760f libplacebo-1.7.0-rc1.tar.gz
609fa424934b7cf5c484c23f7b3e9e3ab39cead450b2112c878a2a8b3b3b9b1925aadf986ca5ea8251a1087726192c3e0b830a176ed7a50c1503589e110010bd libplacebo-1.7.0-rc2.tar.gz
# libplacebo
PLACEBO_VERSION := 1.7.0-rc1
PLACEBO_VERSION := 1.7.0-rc2
PLACEBO_URL := https://github.com/haasn/libplacebo/archive/v$(PLACEBO_VERSION).tar.gz
PLACEBO_ARCHIVE = libplacebo-$(PLACEBO_VERSION).tar.gz
......@@ -21,8 +21,7 @@ $(TARBALLS)/$(PLACEBO_ARCHIVE):
libplacebo: $(PLACEBO_ARCHIVE) .sum-libplacebo
$(UNPACK)
$(APPLY) $(SRC)/libplacebo/0001-build-fix-lpthread-dependency-with-glslang.patch
$(APPLY) $(SRC)/libplacebo/0002-meson-fix-glslang-search-path.patch
$(APPLY) $(SRC)/libplacebo/0001-meson-fix-glslang-search-path.patch
$(MOVE)
.libplacebo: libplacebo crossfile.meson
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment