Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package eglexternalplatform for
openSUSE:Factory checked in at 2024-09-29 18:09:28
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/eglexternalplatform (Old)
and /work/SRC/openSUSE:Factory/.eglexternalplatform.new.29891 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "eglexternalplatform"
Sun Sep 29 18:09:28 2024 rev:4 rq:1204273 version:1.2
Changes:
--------
--- /work/SRC/openSUSE:Factory/eglexternalplatform/eglexternalplatform.changes
2021-10-05 22:34:12.958907288 +0200
+++
/work/SRC/openSUSE:Factory/.eglexternalplatform.new.29891/eglexternalplatform.changes
2024-09-29 18:09:49.927633339 +0200
@@ -1,0 +2,12 @@
+Thu Sep 19 20:44:16 UTC 2024 - Stefan Dirsch <[email protected]>
+
+- update to release 1.2
+ * Change the shutdown behavior so that
+ EGLExtPlatformExports::unloadEGLExternalPlatform is called
+ while the internal EGLDisplays are still valid.
+ * Added a meson.build file to generate the pkg-config file. It's
+ also set up so that you can use eglexternalplatform as a Meson
+ subproject.
+ * Interface version 1.2 is supported on 560.* and later drivers.
+
+-------------------------------------------------------------------
Old:
----
eglexternalplatform-1.1.tar.gz
New:
----
eglexternalplatform-1.2.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ eglexternalplatform.spec ++++++
--- /var/tmp/diff_new_pack.LlCApI/_old 2024-09-29 18:09:50.351650856 +0200
+++ /var/tmp/diff_new_pack.LlCApI/_new 2024-09-29 18:09:50.355651022 +0200
@@ -1,7 +1,7 @@
#
# spec file for package eglexternalplatform
#
-# Copyright (c) 2021 SUSE LLC
+# Copyright (c) 2024 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -17,15 +17,14 @@
Name: eglexternalplatform
-Version: 1.1
+Version: 1.2
Release: 0
Summary: The EGL External Platform interface
License: MIT
Group: Development/Libraries/C and C++
URL: https://github.com/NVIDIA/eglexternalplatform
Source0:
https://github.com/NVIDIA/eglexternalplatform/archive/%{version}/%{name}-%{version}.tar.gz
-BuildRequires: pkgconfig
-BuildArch: noarch
+BuildRequires: meson
%description
A work-in-progress specification of the EGL External Platform interface.
@@ -43,18 +42,17 @@
%prep
%autosetup
+%meson
%build
+%meson_build
%install
-install -d -m0755 %{buildroot}%{_datadir}/pkgconfig
-install -d -m0755 %{buildroot}%{_includedir}/EGL
-install -m0644 eglexternalplatform.pc %{buildroot}%{_datadir}/pkgconfig
-install -m0644 interface/*.h %{buildroot}%{_includedir}/EGL
+%meson_install
%files devel
%license COPYING
%doc README.md
-%{_datadir}/pkgconfig/eglexternalplatform.pc
-%{_includedir}/EGL
+%{_libdir}/pkgconfig/eglexternalplatform.pc
+%{_includedir}/*.h
++++++ eglexternalplatform-1.1.tar.gz -> eglexternalplatform-1.2.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/eglexternalplatform-1.1/README.md
new/eglexternalplatform-1.2/README.md
--- old/eglexternalplatform-1.1/README.md 2018-08-16 21:19:35.000000000
+0200
+++ new/eglexternalplatform-1.2/README.md 2024-06-27 00:17:54.000000000
+0200
@@ -11,7 +11,7 @@
functions.
Examples of low-level EGL platforms are `EGL_EXT_platform_device` or
-`EGL_KHR_platform_gbm`.
+`EGL_MESA_platform_surfaceless`.
Installing the interface
@@ -19,14 +19,11 @@
This is a headers-only specification of the interface.
-To install the interface, just copy the header files under a certain system
-headers directory (e.g. /usr/include).
-
-A template *eglexternalplatform.pc* **pkg-config** is provided along with the
-header files. It can be edited to match the location of the header files and
-copied to an appropriate **pkg-config** configuration directory (e.g.
-/usr/share/pkgconfig).
+A `meson.build` file is included, which will install the header files and
+generate a matching pkg-config file.
+Alternately, `meson.build` has the necessary `override_dependency` call to work
+as a Meson subproject.
Definitions
-----------
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/eglexternalplatform-1.1/eglexternalplatform.pc
new/eglexternalplatform-1.2/eglexternalplatform.pc
--- old/eglexternalplatform-1.1/eglexternalplatform.pc 2018-08-16
21:19:35.000000000 +0200
+++ new/eglexternalplatform-1.2/eglexternalplatform.pc 1970-01-01
01:00:00.000000000 +0100
@@ -1,6 +0,0 @@
-includedir=/usr/include/EGL
-
-Name: EGL External Platform interface
-Description: EGL External Platform interface
-Version: 1.1
-Cflags: -I${includedir}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/eglexternalplatform-1.1/interface/eglexternalplatform.h
new/eglexternalplatform-1.2/interface/eglexternalplatform.h
--- old/eglexternalplatform-1.1/interface/eglexternalplatform.h 2018-08-16
21:19:35.000000000 +0200
+++ new/eglexternalplatform-1.2/interface/eglexternalplatform.h 2024-06-27
00:17:54.000000000 +0200
@@ -81,6 +81,11 @@
*
* If all resources are properly freed, EGL_TRUE is returned and the given
* platform data pointer becomes invalid. Otherwise, EGL_FALSE is returned.
+ *
+ * Prior to version 1.2, the driver called this after it had finished most of
+ * its internal teardown, so calling into the driver was not safe. In version
+ * 1.2 or later, however, it's safe to call into the driver, and any internal
+ * EGLDisplays will still be valid.
*/
typedef EGLBoolean (*PEGLEXTFNUNLOADEGLEXTERNALPLATFORM) (void *platformData);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/eglexternalplatform-1.1/interface/eglexternalplatformversion.h
new/eglexternalplatform-1.2/interface/eglexternalplatformversion.h
--- old/eglexternalplatform-1.1/interface/eglexternalplatformversion.h
2018-08-16 21:19:35.000000000 +0200
+++ new/eglexternalplatform-1.2/interface/eglexternalplatformversion.h
2024-06-27 00:17:54.000000000 +0200
@@ -48,7 +48,7 @@
#if !defined(EGL_EXTERNAL_PLATFORM_VERSION_MAJOR)
#define EGL_EXTERNAL_PLATFORM_VERSION_MAJOR 1
#if !defined(EGL_EXTERNAL_PLATFORM_VERSION_MINOR)
- #define EGL_EXTERNAL_PLATFORM_VERSION_MINOR 1
+ #define EGL_EXTERNAL_PLATFORM_VERSION_MINOR 2
#endif
#elif !defined(EGL_EXTERNAL_PLATFORM_VERSION_MINOR)
#define EGL_EXTERNAL_PLATFORM_VERSION_MINOR 0
@@ -166,4 +166,13 @@
#define EGL_EXTERNAL_PLATFORM_DRIVER_VERSION_SINCE_MAJOR 1
#define EGL_EXTERNAL_PLATFORM_DRIVER_VERSION_SINCE_MINOR 1
+/*
+ * Safer unloading.
+ *
+ * Starting in version 1.2, it's safe to call into the driver from the
+ * unloadEGLExternalPlatform callback.
+ */
+#define EGL_EXTERNAL_PLATFORM_DRIVER_SAFE_UNLOAD_SINCE_MAJOR 1
+#define EGL_EXTERNAL_PLATFORM_DRIVER_SAFE_UNLOAD_SINCE_MINOR 2
+
#endif // EGL_EXTERNAL_PLATFORM_VERSION_H
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/eglexternalplatform-1.1/meson.build
new/eglexternalplatform-1.2/meson.build
--- old/eglexternalplatform-1.1/meson.build 1970-01-01 01:00:00.000000000
+0100
+++ new/eglexternalplatform-1.2/meson.build 2024-06-27 00:17:54.000000000
+0200
@@ -0,0 +1,17 @@
+project('eglexternalplatform',
+ version : '1.2')
+
+pkg = import('pkgconfig')
+pkg.generate(filebase: 'eglexternalplatform',
+ name: 'EGL External Platform interface',
+ description: 'EGL External Platform interface')
+
+install_headers(
+ 'interface/eglexternalplatform.h',
+ 'interface/eglexternalplatformversion.h',
+)
+
+eglexternalplatform_dep = declare_dependency(
+ include_directories: include_directories('interface'),
+)
+meson.override_dependency('eglexternalplatform', eglexternalplatform_dep)