[vlc-commits] [Git][videolan/vlc][3.0.x] 4 commits: Contribs: update dav1d to 0.9.2

Rémi Denis-Courmont (@Courmisch) gitlab at videolan.org
Wed Feb 2 11:18:41 UTC 2022



Rémi Denis-Courmont pushed to branch 3.0.x at VideoLAN / VLC


Commits:
17172c04 by Jean-Baptiste Kempf at 2022-01-31T15:52:18+01:00
Contribs: update dav1d to 0.9.2

(cherry picked from commit d59532b08e0158945d55779e61f3e01bbb3fa3dd)

- - - - -
8a0968e7 by Jean-Baptiste Kempf at 2022-01-31T17:18:17+01:00
Contribs: update fribidi to 1.0.11

(cherry picked from commit 6109444881af2525e24f846dc8cd4bd135a7f64c)

- - - - -
8fbafa23 by Jean-Baptiste Kempf at 2022-01-31T17:18:32+01:00
Contribs: update freetype to 2.11.1

(cherry picked from commit b3e9723f00d8a8b75b34dbb65c8d5c0d22bb4557)

- - - - -
bfca6804 by Jean-Baptiste Kempf at 2022-01-31T17:18:32+01:00
Contribs: update libass to 0.15.2

(cherry picked from commit 827394029074561a7f44ec7c0c477f6f7b483768)

- - - - -


14 changed files:

- + contrib/src/ass/0001-configure-add-Core-Text-and-DirectWrite-to-Libs.priv.patch
- contrib/src/ass/SHA512SUMS
- − contrib/src/ass/coretext-errorhandling.patch
- − contrib/src/ass/dwrite.patch
- contrib/src/ass/rules.mak
- contrib/src/ass/use-topendir.patch
- contrib/src/dav1d/SHA512SUMS
- contrib/src/dav1d/rules.mak
- contrib/src/freetype2/SHA512SUMS
- contrib/src/freetype2/rules.mak
- + contrib/src/freetype2/uwpfixes.patch
- contrib/src/fribidi/SHA512SUMS
- − contrib/src/fribidi/meson_no_bins.patch
- contrib/src/fribidi/rules.mak


Changes:

=====================================
contrib/src/ass/0001-configure-add-Core-Text-and-DirectWrite-to-Libs.priv.patch
=====================================
@@ -0,0 +1,48 @@
+From 643829edd8408ec37182a04040fe5a7bf54dccc3 Mon Sep 17 00:00:00 2001
+From: Oleg Oshmyan <chortos at inbox.lv>
+Date: Sat, 18 Sep 2021 03:04:15 +0300
+Subject: [PATCH] configure: add Core Text and DirectWrite to Libs.private
+
+Fixes https://github.com/libass/libass/issues/211.
+---
+ configure.ac | 4 ++++
+ 1 file changed, 4 insertions(+)
+
+diff --git a/configure.ac b/configure.ac
+index 89d5eb0..6ae78a1 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -126,6 +126,7 @@ AS_IF([test "x$enable_coretext" != xno], [
+             [[CTFontDescriptorCopyAttribute(NULL, kCTFontURLAttribute);]]
+         )
+     ], [
++        pkg_libs="$pkg_libs -framework ApplicationServices -framework CoreFoundation"
+         LIBS="$LIBS -framework ApplicationServices -framework CoreFoundation"
+         AC_DEFINE(CONFIG_CORETEXT, 1, [found CoreText in ApplicationServices framework])
+         coretext=true
+@@ -137,6 +138,7 @@ AS_IF([test "x$enable_coretext" != xno], [
+                 [[CTFontDescriptorCopyAttribute(NULL, kCTFontURLAttribute);]]
+             )
+         ], [
++            pkg_libs="$pkg_libs -framework CoreText -framework CoreFoundation"
+             LIBS="$LIBS -framework CoreText -framework CoreFoundation"
+             AC_DEFINE(CONFIG_CORETEXT, 1, [found CoreText framework])
+             coretext=true
+@@ -171,12 +173,14 @@ AS_IF([test "x$enable_directwrite" != xno], [
+         ], [
+             # WinRT/UWP/app build: GDI and LoadLibrary are
+             # unavailable, but DirectWrite is always present
++            pkg_libs="$pkg_libs -ldwrite"
+             LIBS="$LIBS -ldwrite"
+             AC_DEFINE(CONFIG_DIRECTWRITE, 1, [found DirectWrite (WinRT/UWP)])
+             AC_MSG_RESULT([no])
+         ], [
+             # Win32/desktop build: GDI is always present;
+             # DirectWrite is optional but can be loaded via LoadLibrary
++            pkg_libs="$pkg_libs -lgdi32"
+             LIBS="$LIBS -lgdi32"
+             AC_DEFINE(CONFIG_DIRECTWRITE, 1, [found DirectWrite and GDI (Win32)])
+             AC_MSG_RESULT([yes])
+-- 
+2.34.1
+


=====================================
contrib/src/ass/SHA512SUMS
=====================================
@@ -1 +1 @@
-ed1824c4195ef08e6314ee2184b20e6898be6bb922e0fa26ab64bc03b065d16e68ef92c012ab09d2103dbbd9a1348e3722aa0812ea2533cd14ad1ad467f58b0f  libass-0.14.0.tar.gz
+3b8022ca500d4a9e19e9b7106e29d23d4bca20012619c829bc3e77437bcb3c7bd8364800f7daeb3f2d8400afc7bbcaab487c7b30c429d9aed70e37ce4cb265a2  libass-0.15.2.tar.gz


=====================================
contrib/src/ass/coretext-errorhandling.patch deleted
=====================================
@@ -1,27 +0,0 @@
-diff --git a/libass/ass_coretext.c b/libass/ass_coretext.c
-index 59a8a2d..7371f7c 100644
---- a/libass/ass_coretext.c
-+++ b/libass/ass_coretext.c
-@@ -96,7 +96,13 @@ static bool check_glyph(void *priv, uint32_t code)
- static char *get_font_file(CTFontDescriptorRef fontd)
- {
-     CFURLRef url = CTFontDescriptorCopyAttribute(fontd, kCTFontURLAttribute);
-+    if (!url)
-+        return NULL;
-     CFStringRef path = CFURLCopyFileSystemPath(url, kCFURLPOSIXPathStyle);
-+    if (!path) {
-+        SAFE_CFRelease(url);
-+        return NULL;
-+    }
-     char *buffer = cfstr2buf(path);
-     SAFE_CFRelease(path);
-     SAFE_CFRelease(url);
-@@ -133,7 +139,7 @@ static void process_descriptors(ASS_Library *lib, ASS_FontProvider *provider,
-         int index = -1;
- 
-         char *path = get_font_file(fontd);
--        if (strcmp("", path) == 0) {
-+        if (!path || strcmp("", path) == 0) {
-             // skip the font if the URL field in the font descriptor is empty
-             free(path);
-             continue;


=====================================
contrib/src/ass/dwrite.patch deleted
=====================================
@@ -1,48 +0,0 @@
---- libass/libass/ass_directwrite.c.orig	2016-12-14 12:09:24.569899227 +0100
-+++ libass/libass/ass_directwrite.c	2016-12-14 12:21:28.429203219 +0100
-@@ -23,6 +23,7 @@
- #include <initguid.h>
- #include <ole2.h>
- #include <shobjidl.h>
-+#include <winapifamily.h>
- 
- #include "dwrite_c.h"
- 
-@@ -742,8 +743,9 @@
-     ASS_FontProvider *provider = NULL;
-     DWriteCreateFactoryFn DWriteCreateFactoryPtr = NULL;
-     ProviderPrivate *priv = NULL;
--
--    HMODULE directwrite_lib = LoadLibraryW(L"Dwrite.dll");
-+    HMODULE directwrite_lib = NULL;
-+#if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_DESKTOP)
-+    directwrite_lib = LoadLibraryW(L"Dwrite.dll");
-     if (!directwrite_lib)
-         goto cleanup;
- 
-@@ -751,6 +753,9 @@
-                                                                    "DWriteCreateFactory");
-     if (!DWriteCreateFactoryPtr)
-         goto cleanup;
-+#else
-+    DWriteCreateFactoryPtr = DWriteCreateFactory;
-+#endif
- 
-     hr = DWriteCreateFactoryPtr(DWRITE_FACTORY_TYPE_SHARED,
-                                 &IID_IDWriteFactory,
---- libass/libass/dwrite_c.h.orig	2016-12-14 12:36:59.215968100 +0100
-+++ libass/libass/dwrite_c.h	2016-12-14 12:38:42.359500667 +0100
-@@ -142,6 +142,13 @@
- typedef struct DWRITE_TRIMMING DWRITE_TRIMMING;
- typedef struct DWRITE_UNDERLINE DWRITE_UNDERLINE;
- 
-+DWRITEAPI HRESULT WINAPI DWriteCreateFactory(
-+  DWRITE_FACTORY_TYPE factoryType,
-+  REFIID iid,
-+  IUnknown **factory
-+);
-+
-+
- #ifndef __MINGW_DEF_ARG_VAL
- #ifdef __cplusplus
- #define __MINGW_DEF_ARG_VAL(x) = x


=====================================
contrib/src/ass/rules.mak
=====================================
@@ -1,5 +1,5 @@
 # ASS
-ASS_VERSION := 0.14.0
+ASS_VERSION := 0.15.2
 ASS_URL := https://github.com/libass/libass/releases/download/$(ASS_VERSION)/libass-$(ASS_VERSION).tar.gz
 
 PKGS += ass
@@ -9,7 +9,7 @@ endif
 
 ifdef HAVE_ANDROID
 WITH_FONTCONFIG = 0
-WITH_HARFBUZZ = 0
+WITH_HARFBUZZ = 1
 ifeq ($(ANDROID_ABI), x86)
 WITH_ASS_ASM = 0
 endif
@@ -42,13 +42,7 @@ $(TARBALLS)/libass-$(ASS_VERSION).tar.gz:
 libass: libass-$(ASS_VERSION).tar.gz .sum-ass
 	$(UNPACK)
 	$(APPLY) $(SRC)/ass/ass-macosx.patch
-	$(APPLY) $(SRC)/ass/coretext-errorhandling.patch
-ifdef HAVE_WIN32
-	$(APPLY) $(SRC)/ass/use-topendir.patch
-ifdef HAVE_WINSTORE
-	$(APPLY) $(SRC)/ass/dwrite.patch
-endif
-endif
+	$(APPLY) $(SRC)/ass/0001-configure-add-Core-Text-and-DirectWrite-to-Libs.priv.patch
 	$(UPDATE_AUTOCONFIG)
 	$(MOVE)
 
@@ -83,5 +77,7 @@ endif
 .ass: libass
 	$(RECONF)
 	cd $< && $(HOSTVARS) CFLAGS="$(CFLAGS) $(ASS_CFLAGS)" ./configure $(HOSTCONF) $(ASS_CONF)
+	cd $< && $(MAKE)
+	$(call pkg_static,"libass.pc")
 	cd $< && $(MAKE) install
 	touch $@


=====================================
contrib/src/ass/use-topendir.patch
=====================================
@@ -1,5 +1,5 @@
---- libass-0.13.4/libass/ass_fontselect.c.orig	2016-07-11 23:29:00.000000000 +0200
-+++ libass-0.13.4/libass/ass_fontselect.c	2016-10-11 11:14:24.387661958 +0200
+--- a/libass/ass_fontselect.c.orig	2021-09-11 23:27:04.000000000 +0200
++++ b/libass/ass_fontselect.c	2021-12-29 17:18:47.535670604 +0100
 @@ -47,6 +47,9 @@
  #include "ass_font.h"
  #include "ass_string.h"
@@ -10,7 +10,7 @@
  #define ABS(x) ((x) < 0 ? -(x) : (x))
  #define MAX_FULLNAME 100
  
-@@ -161,28 +164,63 @@
+@@ -166,21 +169,55 @@
      .destroy_font      = destroy_font_ft,
  };
  
@@ -50,6 +50,9 @@
 +    free(dirw);
      if (!d)
          return;
+     size_t dirlen = strlen(dir);
+     size_t namemax = 0;
+     char *namebuf = NULL;
      while (1) {
 -        struct dirent *entry = readdir(d);
 +        struct _tdirent *entry = _treaddir(d);
@@ -60,13 +63,21 @@
 +        {
 +            free(d_name);
              continue;
+-        size_t namelen = dirlen + strlen(entry->d_name) + 2u;
 +        }
-         char fullname[4096];
--        snprintf(fullname, sizeof(fullname), "%s/%s", dir, entry->d_name);
-+        _snprintf(fullname, sizeof(fullname), "%s/%s", dir, d_name);
++        size_t namelen = dirlen + strlen(d_name) + 2u;
+         if (namelen < 2 || namelen - 2 < dirlen)
+             continue;
+         if (namelen > namemax) {
+@@ -190,17 +227,18 @@
+             else
+                 continue;
+         }
+-        snprintf(namebuf, namemax, "%s/%s", dir, entry->d_name);
++        _snprintf(namebuf, namemax, "%s/%s", dir, d_name);
          size_t bufsize = 0;
-         ass_msg(library, MSGL_INFO, "Loading font file '%s'", fullname);
-         void *data = read_file(library, fullname, &bufsize);
+         ass_msg(library, MSGL_INFO, "Loading font file '%s'", namebuf);
+         void *data = read_file(library, namebuf, &bufsize);
          if (data) {
 -            ass_add_font(library, entry->d_name, data, bufsize);
 +            ass_add_font(library, d_name, data, bufsize);
@@ -74,6 +85,7 @@
          }
 +        free(d_name);
      }
+     free(namebuf);
 -    closedir(d);
 +    _tclosedir(d);
  }


=====================================
contrib/src/dav1d/SHA512SUMS
=====================================
@@ -1 +1 @@
-672708b07c389f21968b3d91be4547483f8c0d3b5d41e916503798896ab88212bafa3ca8c229624cbbbe5fdcfcb4f26f19ed8ce9ce1c9f8a217174fe397b6a35  dav1d-0.9.1.tar.xz
\ No newline at end of file
+87026f8b14e408ff50fc8f137ec2ede4b14c5f69687e615d2359d0f718ae5cb5176522490786d9ae1f7838182f82615c2674f7c2961b6dcec83f1ee587c3af7c  dav1d-0.9.2.tar.xz


=====================================
contrib/src/dav1d/rules.mak
=====================================
@@ -1,6 +1,6 @@
 # libdav1d
 
-DAV1D_VERSION := 0.9.1
+DAV1D_VERSION := 0.9.2
 DAV1D_URL := $(VIDEOLAN)/dav1d/$(DAV1D_VERSION)/dav1d-$(DAV1D_VERSION).tar.xz
 
 PKGS += dav1d


=====================================
contrib/src/freetype2/SHA512SUMS
=====================================
@@ -1 +1 @@
-827cda734aa6b537a8bcb247549b72bc1e082a5b32ab8d3cccb7cc26d5f6ee087c19ce34544fa388a1eb4ecaf97600dbabc3e10e950f2ba692617fee7081518f  freetype-2.10.4.tar.xz
+0848678482fbe20603a866f02da82c91122014d6f815ba4f1d9c03601c32e3ceb781f721c2b4427b6117d7c9742018af8dbb26566faf018595c70b50f8db3f08  freetype-2.11.1.tar.xz


=====================================
contrib/src/freetype2/rules.mak
=====================================
@@ -1,6 +1,6 @@
 # freetype2
 
-FREETYPE2_VERSION := 2.10.4
+FREETYPE2_VERSION := 2.11.1
 FREETYPE2_URL := $(SF)/freetype/freetype2/$(FREETYPE2_VERSION)/freetype-$(FREETYPE2_VERSION).tar.xz
 
 PKGS += freetype2
@@ -15,6 +15,7 @@ $(TARBALLS)/freetype-$(FREETYPE2_VERSION).tar.xz:
 
 freetype: freetype-$(FREETYPE2_VERSION).tar.xz .sum-freetype2
 	$(UNPACK)
+	$(APPLY) $(SRC)/freetype2/uwpfixes.patch
 	$(call pkg_static, "builds/unix/freetype2.in")
 	$(MOVE)
 


=====================================
contrib/src/freetype2/uwpfixes.patch
=====================================
@@ -0,0 +1,38 @@
+diff --git a/builds/windows/ftsystem.c b/builds/windows/ftsystem.c
+index 1ebadd49f..ac8ff1f92 100644
+--- a/builds/windows/ftsystem.c
++++ b/builds/windows/ftsystem.c
+@@ -28,6 +28,7 @@
+   /* memory mapping and allocation includes and definitions */
+ #define WIN32_LEAN_AND_MEAN
+ #include <windows.h>
++#include <winapifamily.h>
+ 
+ 
+   /**************************************************************************
+@@ -296,7 +297,11 @@
+       goto Fail_Open;
+     }
+ 
++#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)
+     fm = CreateFileMapping( file, NULL, PAGE_READONLY, 0, 0, NULL );
++#else
++    fm = CreateFileMappingFromApp( file, NULL, PAGE_READONLY, 0, NULL );
++#endif
+     if ( fm == NULL )
+     {
+       FT_ERROR(( "FT_Stream_Open: can not map file\n" ));
+@@ -308,8 +313,13 @@
+     /* a size greater than LONG_MAX                                    */
+     stream->size = size.LowPart;
+     stream->pos  = 0;
++#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)
+     stream->base = (unsigned char *)
+                      MapViewOfFile( fm, FILE_MAP_READ, 0, 0, 0 );
++#else
++    stream->base = (unsigned char *)
++                     MapViewOfFileFromApp( fm, FILE_MAP_READ, 0, 0 );
++#endif
+ 
+     CloseHandle( fm );
+ 


=====================================
contrib/src/fribidi/SHA512SUMS
=====================================
@@ -1 +1 @@
-e66989830941172fa003c8b9376719282fa1039592a1e158e975cab81ce8dcb2755453c64906a8464c047f9e9154e012d9bd37256b1f463e235648a13e4601ed  fribidi-1.0.9.tar.xz
+6afde86784de06759f18235ccb44f23261a975f7cce0021b16755065a6a8ed84d7d5fb7fdcaadd691b48011efb4bfc2ee67555e5133a294a418cca1a0c85476c  fribidi-1.0.11.tar.xz


=====================================
contrib/src/fribidi/meson_no_bins.patch deleted
=====================================
@@ -1,41 +0,0 @@
-From 84d7caf52322a33deed868655d19ed2b41c226a9 Mon Sep 17 00:00:00 2001
-From: Jean-Baptiste Kempf <jb at videolan.org>
-Date: Sun, 29 Mar 2020 18:57:39 +0200
-Subject: [PATCH] meson: allow to disable building tests and binaries
-
----
- meson.build       | 8 ++++++--
- meson_options.txt | 4 ++++
- 2 files changed, 10 insertions(+), 2 deletions(-)
-
-diff --git a/meson.build b/meson.build
-index 75e796e..03e9388 100644
---- a/meson.build
-+++ b/meson.build
-@@ -84,8 +84,12 @@ incs = include_directories('.', 'lib', 'gen.tab')
- 
- subdir('gen.tab')
- subdir('lib')
--subdir('bin')
--subdir('test')
-+if get_option('bin')
-+  subdir('bin')
-+endif
-+if get_option('tests')
-+   subdir('test')
-+endif
- if get_option('docs')
-   subdir('doc')
- endif
-diff --git a/meson_options.txt b/meson_options.txt
-index c312fe8..11cae8d 100644
---- a/meson_options.txt
-+++ b/meson_options.txt
-@@ -2,3 +2,7 @@ option('deprecated', type : 'boolean', value : true,
-   description: 'Build deprecated functionality')
- option('docs', type : 'boolean', value : true,
-   description: 'Build documentation')
-+option('bin', type : 'boolean', value : true,
-+  description: 'Build binaries')
-+option('tests', type : 'boolean', value : true,
-+  description: 'Build tests')


=====================================
contrib/src/fribidi/rules.mak
=====================================
@@ -1,5 +1,5 @@
 # FRIBIDI
-FRIBIDI_VERSION := 1.0.9
+FRIBIDI_VERSION := 1.0.11
 FRIBIDI_URL := https://github.com/fribidi/fribidi/releases/download/v$(FRIBIDI_VERSION)/fribidi-$(FRIBIDI_VERSION).tar.xz
 
 PKGS += fribidi
@@ -14,7 +14,6 @@ $(TARBALLS)/fribidi-$(FRIBIDI_VERSION).tar.xz:
 
 fribidi: fribidi-$(FRIBIDI_VERSION).tar.xz .sum-fribidi
 	$(UNPACK)
-	$(APPLY) $(SRC)/fribidi/meson_no_bins.patch
 	$(MOVE)
 
 # FIXME: DEPS_fribidi = iconv $(DEPS_iconv)



View it on GitLab: https://code.videolan.org/videolan/vlc/-/compare/d37f1f61673fab94ac6b95c08de248c50fa0926d...bfca6804525d6d748d261e1a3cf57a59612102dc

-- 
View it on GitLab: https://code.videolan.org/videolan/vlc/-/compare/d37f1f61673fab94ac6b95c08de248c50fa0926d...bfca6804525d6d748d261e1a3cf57a59612102dc
You're receiving this email because of your account on code.videolan.org.




More information about the vlc-commits mailing list