diff mbox series

[meta-oe,V2] abseil-cpp: upgrade 20230802.1 -> 20240116.1

Message ID 1709856910-618-1-git-send-email-wangmy@fujitsu.com
State Accepted
Headers show
Series [meta-oe,V2] abseil-cpp: upgrade 20230802.1 -> 20240116.1 | expand

Commit Message

Mingyu Wang (Fujitsu) March 8, 2024, 12:15 a.m. UTC
From: Wang Mingyu <wangmy@fujitsu.com>

0004-Avoid-using-both-Win32Waiter-and-PthreadWaiter-on-Mi.patch
revmoed since it's included in 20240116.1.

Changelog:
===========
-Added absl::NoDestructor<T> to simplify defining static types that do not need
 to be destructed upon program exit.
-Added configurable verbose logging (also known as VLOG).
-Added absl::Overload(), which returns a functor that provides overloads based
 on the functors passed to it.
-Bzlmod is now officially supported (previously it was supported by the community).

Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
---
 ...-Win32Waiter-and-PthreadWaiter-on-Mi.patch | 62 -------------------
 ...20230802.1.bb => abseil-cpp_20240116.1.bb} | 37 +++--------
 2 files changed, 9 insertions(+), 90 deletions(-)
 delete mode 100644 meta-oe/recipes-devtools/abseil-cpp/abseil-cpp/0004-Avoid-using-both-Win32Waiter-and-PthreadWaiter-on-Mi.patch
 rename meta-oe/recipes-devtools/abseil-cpp/{abseil-cpp_20230802.1.bb => abseil-cpp_20240116.1.bb} (59%)

Comments

Martin Jansa March 10, 2024, 1:53 p.m. UTC | #1
Does this intentionally undo last 2 changes from Peter? The commit
message doesn't mention it

https://git.openembedded.org/meta-openembedded/commit/?id=32eefcf1ca97a08ea85f62a72b676e447f1b79a0
https://git.openembedded.org/meta-openembedded/commit/?id=5c554c9b8cb63b5d0d5f434c28dd71c0f1843448

also looks like libabsl_flags is no longer provided by this version
(got failure from one recipe, will check if it's expected).

Regards,

On Fri, Mar 8, 2024 at 1:15 AM wangmy via lists.openembedded.org
<wangmy=fujitsu.com@lists.openembedded.org> wrote:
>
> From: Wang Mingyu <wangmy@fujitsu.com>
>
> 0004-Avoid-using-both-Win32Waiter-and-PthreadWaiter-on-Mi.patch
> revmoed since it's included in 20240116.1.
>
> Changelog:
> ===========
> -Added absl::NoDestructor<T> to simplify defining static types that do not need
>  to be destructed upon program exit.
> -Added configurable verbose logging (also known as VLOG).
> -Added absl::Overload(), which returns a functor that provides overloads based
>  on the functors passed to it.
> -Bzlmod is now officially supported (previously it was supported by the community).
>
> Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
> ---
>  ...-Win32Waiter-and-PthreadWaiter-on-Mi.patch | 62 -------------------
>  ...20230802.1.bb => abseil-cpp_20240116.1.bb} | 37 +++--------
>  2 files changed, 9 insertions(+), 90 deletions(-)
>  delete mode 100644 meta-oe/recipes-devtools/abseil-cpp/abseil-cpp/0004-Avoid-using-both-Win32Waiter-and-PthreadWaiter-on-Mi.patch
>  rename meta-oe/recipes-devtools/abseil-cpp/{abseil-cpp_20230802.1.bb => abseil-cpp_20240116.1.bb} (59%)
>
> diff --git a/meta-oe/recipes-devtools/abseil-cpp/abseil-cpp/0004-Avoid-using-both-Win32Waiter-and-PthreadWaiter-on-Mi.patch b/meta-oe/recipes-devtools/abseil-cpp/abseil-cpp/0004-Avoid-using-both-Win32Waiter-and-PthreadWaiter-on-Mi.patch
> deleted file mode 100644
> index db559bb16..000000000
> --- a/meta-oe/recipes-devtools/abseil-cpp/abseil-cpp/0004-Avoid-using-both-Win32Waiter-and-PthreadWaiter-on-Mi.patch
> +++ /dev/null
> @@ -1,62 +0,0 @@
> -From cb7665f39e23e95e2466390c60ee5a410780a3ed Mon Sep 17 00:00:00 2001
> -From: Derek Mauro <dmauro@google.com>
> -Date: Wed, 8 Nov 2023 09:55:31 -0800
> -Subject: [PATCH] Avoid using both Win32Waiter and PthreadWaiter on MinGW, and
> - use StdcppWaiter instead.
> -
> -There are various flavors of MinGW, some of which support pthread,
> -and some of which support Win32. Instead of figuring out which
> -platform is being used, just use the generic implementation.
> -
> -PiperOrigin-RevId: 580565507
> -Change-Id: Ia85fd7496f1e6ebdeadb95202f0039e844826118
> -Upstream-Status: Backport
> ----
> - absl/synchronization/internal/pthread_waiter.h | 4 ++--
> - absl/synchronization/internal/win32_waiter.h   | 6 ++++--
> - 2 files changed, 6 insertions(+), 4 deletions(-)
> -
> -diff --git a/absl/synchronization/internal/pthread_waiter.h b/absl/synchronization/internal/pthread_waiter.h
> -index 206aefa4..23db76ad 100644
> ---- a/absl/synchronization/internal/pthread_waiter.h
> -+++ b/absl/synchronization/internal/pthread_waiter.h
> -@@ -16,7 +16,7 @@
> - #ifndef ABSL_SYNCHRONIZATION_INTERNAL_PTHREAD_WAITER_H_
> - #define ABSL_SYNCHRONIZATION_INTERNAL_PTHREAD_WAITER_H_
> -
> --#ifndef _WIN32
> -+#if !defined(_WIN32) && !defined(__MINGW32__)
> - #include <pthread.h>
> -
> - #include "absl/base/config.h"
> -@@ -55,6 +55,6 @@ class PthreadWaiter : public WaiterCrtp<PthreadWaiter> {
> - ABSL_NAMESPACE_END
> - }  // namespace absl
> -
> --#endif  // ndef _WIN32
> -+#endif  // !defined(_WIN32) && !defined(__MINGW32__)
> -
> - #endif  // ABSL_SYNCHRONIZATION_INTERNAL_PTHREAD_WAITER_H_
> -diff --git a/absl/synchronization/internal/win32_waiter.h b/absl/synchronization/internal/win32_waiter.h
> -index 87eb617c..fdab264e 100644
> ---- a/absl/synchronization/internal/win32_waiter.h
> -+++ b/absl/synchronization/internal/win32_waiter.h
> -@@ -20,7 +20,8 @@
> - #include <sdkddkver.h>
> - #endif
> -
> --#if defined(_WIN32) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
> -+#if defined(_WIN32) && !defined(__MINGW32__) && \
> -+    _WIN32_WINNT >= _WIN32_WINNT_VISTA
> -
> - #include "absl/base/config.h"
> - #include "absl/synchronization/internal/kernel_timeout.h"
> -@@ -65,6 +66,7 @@ class Win32Waiter : public WaiterCrtp<Win32Waiter> {
> - ABSL_NAMESPACE_END
> - }  // namespace absl
> -
> --#endif  // defined(_WIN32) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
> -+#endif  // defined(_WIN32) && !defined(__MINGW32__) &&
> -+        // _WIN32_WINNT >= _WIN32_WINNT_VISTA
> -
> - #endif  // ABSL_SYNCHRONIZATION_INTERNAL_WIN32_WAITER_H_
> diff --git a/meta-oe/recipes-devtools/abseil-cpp/abseil-cpp_20230802.1.bb b/meta-oe/recipes-devtools/abseil-cpp/abseil-cpp_20240116.1.bb
> similarity index 59%
> rename from meta-oe/recipes-devtools/abseil-cpp/abseil-cpp_20230802.1.bb
> rename to meta-oe/recipes-devtools/abseil-cpp/abseil-cpp_20240116.1.bb
> index 17db7b2e4..82b2d20e0 100644
> --- a/meta-oe/recipes-devtools/abseil-cpp/abseil-cpp_20230802.1.bb
> +++ b/meta-oe/recipes-devtools/abseil-cpp/abseil-cpp_20240116.1.bb
> @@ -1,24 +1,26 @@
>  SUMMARY = "Abseil is a cpp library like STL"
>  DESCRIPTION = "Abseil provides pieces missing from the C++ standard. Contains \
>  additional useful libraries like algorithm, container, debugging, hash, memory, \
> -meta, numeric, strings, synchronization, time, types and utility."
> +meta, numeric, strings, synchronization, time, types and utility"
>  HOMEPAGE = "https://abseil.io/"
>  SECTION = "libs"
>  LICENSE = "Apache-2.0"
>  LIC_FILES_CHKSUM = "file://LICENSE;md5=df52c6edb7adc22e533b2bacc3bd3915"
>
> -SRCREV = "fb3621f4f897824c0dbe0615fa94543df6192f30"
> -BRANCH = "lts_2023_08_02"
> +SRCREV = "2f9e432cce407ce0ae50676696666f33a77d42ac"
> +BRANCH = "lts_2024_01_16"
>  SRC_URI = "git://github.com/abseil/abseil-cpp;branch=${BRANCH};protocol=https \
>             file://0001-absl-always-use-asm-sgidefs.h.patch             \
>             file://0002-Remove-maes-option-from-cross-compilation.patch \
>             file://abseil-ppc-fixes.patch \
>             file://0003-Remove-neon-option-from-cross-compilation.patch \
> -           file://0004-Avoid-using-both-Win32Waiter-and-PthreadWaiter-on-Mi.patch \
>            "
>
>  S = "${WORKDIR}/git"
>
> +ASNEEDED:class-native = ""
> +ASNEEDED:class-nativesdk = ""
> +
>  inherit cmake
>
>  EXTRA_OECMAKE = "-DBUILD_SHARED_LIBS=ON \
> @@ -26,29 +28,8 @@ EXTRA_OECMAKE = "-DBUILD_SHARED_LIBS=ON \
>                   -DABSL_ENABLE_INSTALL=ON \
>                  "
>
> -SYSROOT_DIRS:append:class-nativesdk:mingw32 = " ${bindir}"
> -
> -PACKAGES_DYNAMIC = "^libabsl-*"
> -PACKAGES_DYNAMIC:class-native = ""
> -
> -PACKAGESPLITFUNCS =+ "split_dynamic_packages"
> -
> -python split_dynamic_packages() {
> -    libdir = d.getVar('libdir')
> -
> -    libpackages = do_split_packages(
> -        d,
> -        root=libdir,
> -        file_regex=r'^libabsl_(.*)\.so\..*$',
> -        output_pattern='libabsl-%s',
> -        description="abseil shared library %s",
> -        prepend=True,
> -        extra_depends='',
> -    )
> -    if libpackages:
> -        d.appendVar('RDEPENDS:' + d.getVar('PN'), ' ' + ' '.join(libpackages))
> -}
> +BBCLASSEXTEND = "native nativesdk"
>
> -ALLOW_EMPTY:${PN} = "1"
> +SYSROOT_DIRS:append:class-nativesdk:mingw32 = " ${bindir}"
>
> -BBCLASSEXTEND = "native nativesdk"
> +FILES:${PN}-dev += "${includedir} ${libdir}/cmake ${libdir}/pkgconfig"
> --
> 2.34.1
>
>
> -=-=-=-=-=-=-=-=-=-=-=-
> Links: You receive all messages sent to this group.
> View/Reply Online (#109211): https://lists.openembedded.org/g/openembedded-devel/message/109211
> Mute This Topic: https://lists.openembedded.org/mt/104800225/3617156
> Group Owner: openembedded-devel+owner@lists.openembedded.org
> Unsubscribe: https://lists.openembedded.org/g/openembedded-devel/unsub [martin.jansa@gmail.com]
> -=-=-=-=-=-=-=-=-=-=-=-
>
Martin Jansa March 10, 2024, 2:40 p.m. UTC | #2
On Sun, Mar 10, 2024 at 2:54 PM Martin Jansa via
lists.openembedded.org <martin.jansa=gmail.com@lists.openembedded.org>
wrote:
>
> Does this intentionally undo last 2 changes from Peter? The commit
> message doesn't mention it
>
> https://git.openembedded.org/meta-openembedded/commit/?id=32eefcf1ca97a08ea85f62a72b676e447f1b79a0
> https://git.openembedded.org/meta-openembedded/commit/?id=5c554c9b8cb63b5d0d5f434c28dd71c0f1843448
>
> also looks like libabsl_flags is no longer provided by this version
> (got failure from one recipe, will check if it's expected).

this last part was expected, absl_flags was removed in:
https://github.com/abseil/abseil-cpp/commit/4038192a57cb75f7ee671f81a3378ff4c74c4f8e

Luckily the library wasn't really needed in our libedgetpu, so I could
just remove it from LDFLAGS as in:
https://github.com/shr-project/meta-webosose/commit/58c1ee08b35a5ffb3b3ef2fe142d1a78585aafcc

Regards,
Peter Kjellerstedt March 11, 2024, 1:06 p.m. UTC | #3
> -----Original Message-----
> From: openembedded-devel@lists.openembedded.org <openembedded-
> devel@lists.openembedded.org> On Behalf Of Martin Jansa
> Sent: den 10 mars 2024 14:54
> To: wangmy@fujitsu.com; Peter Kjellerstedt <peter.kjellerstedt@axis.com>
> Cc: openembedded-devel@lists.openembedded.org
> Subject: Re: [oe] [meta-oe] [PATCH V2] abseil-cpp: upgrade 20230802.1 ->
> 20240116.1
> 
> Does this intentionally undo last 2 changes from Peter? The commit
> message doesn't mention it
> 
> https://git.openembedded.org/meta-openembedded/commit/?id=32eefcf1ca97a08ea85f62a72b676e447f1b79a0
> https://git.openembedded.org/meta-openembedded/commit/?id=5c554c9b8cb63b5d0d5f434c28dd71c0f1843448

I have no idea what happened there, but I assume they were somehow 
accidentally reverted. No idea how that was not detected before the below 
patch was integrated though.

Anyway, I have sent updated patches to restore what was reverted.

//Peter

> 
> also looks like libabsl_flags is no longer provided by this version
> (got failure from one recipe, will check if it's expected).
> 
> Regards,
> 
> On Fri, Mar 8, 2024 at 1:15 AM wangmy via lists.openembedded.org
> <wangmy=fujitsu.com@lists.openembedded.org> wrote:
> >
> > From: Wang Mingyu <wangmy@fujitsu.com>
> >
> > 0004-Avoid-using-both-Win32Waiter-and-PthreadWaiter-on-Mi.patch
> > revmoed since it's included in 20240116.1.
> >
> > Changelog:
> > ===========
> > -Added absl::NoDestructor<T> to simplify defining static types that do
> not need
> >  to be destructed upon program exit.
> > -Added configurable verbose logging (also known as VLOG).
> > -Added absl::Overload(), which returns a functor that provides overloads
> based
> >  on the functors passed to it.
> > -Bzlmod is now officially supported (previously it was supported by the
> community).
> >
> > Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
> > ---
> >  ...-Win32Waiter-and-PthreadWaiter-on-Mi.patch | 62 -------------------
> >  ...20230802.1.bb => abseil-cpp_20240116.1.bb} | 37 +++--------
> >  2 files changed, 9 insertions(+), 90 deletions(-)
> >  delete mode 100644 meta-oe/recipes-devtools/abseil-cpp/abseil-cpp/0004-
> Avoid-using-both-Win32Waiter-and-PthreadWaiter-on-Mi.patch
> >  rename meta-oe/recipes-devtools/abseil-cpp/{abseil-cpp_20230802.1.bb =>
> abseil-cpp_20240116.1.bb} (59%)
> >
> > diff --git a/meta-oe/recipes-devtools/abseil-cpp/abseil-cpp/0004-Avoid-
> using-both-Win32Waiter-and-PthreadWaiter-on-Mi.patch b/meta-oe/recipes-
> devtools/abseil-cpp/abseil-cpp/0004-Avoid-using-both-Win32Waiter-and-
> PthreadWaiter-on-Mi.patch
> > deleted file mode 100644
> > index db559bb16..000000000
> > --- a/meta-oe/recipes-devtools/abseil-cpp/abseil-cpp/0004-Avoid-using-
> both-Win32Waiter-and-PthreadWaiter-on-Mi.patch
> > +++ /dev/null
> > @@ -1,62 +0,0 @@
> > -From cb7665f39e23e95e2466390c60ee5a410780a3ed Mon Sep 17 00:00:00 2001
> > -From: Derek Mauro <dmauro@google.com>
> > -Date: Wed, 8 Nov 2023 09:55:31 -0800
> > -Subject: [PATCH] Avoid using both Win32Waiter and PthreadWaiter on
> MinGW, and
> > - use StdcppWaiter instead.
> > -
> > -There are various flavors of MinGW, some of which support pthread,
> > -and some of which support Win32. Instead of figuring out which
> > -platform is being used, just use the generic implementation.
> > -
> > -PiperOrigin-RevId: 580565507
> > -Change-Id: Ia85fd7496f1e6ebdeadb95202f0039e844826118
> > -Upstream-Status: Backport
> > ----
> > - absl/synchronization/internal/pthread_waiter.h | 4 ++--
> > - absl/synchronization/internal/win32_waiter.h   | 6 ++++--
> > - 2 files changed, 6 insertions(+), 4 deletions(-)
> > -
> > -diff --git a/absl/synchronization/internal/pthread_waiter.h
> b/absl/synchronization/internal/pthread_waiter.h
> > -index 206aefa4..23db76ad 100644
> > ---- a/absl/synchronization/internal/pthread_waiter.h
> > -+++ b/absl/synchronization/internal/pthread_waiter.h
> > -@@ -16,7 +16,7 @@
> > - #ifndef ABSL_SYNCHRONIZATION_INTERNAL_PTHREAD_WAITER_H_
> > - #define ABSL_SYNCHRONIZATION_INTERNAL_PTHREAD_WAITER_H_
> > -
> > --#ifndef _WIN32
> > -+#if !defined(_WIN32) && !defined(__MINGW32__)
> > - #include <pthread.h>
> > -
> > - #include "absl/base/config.h"
> > -@@ -55,6 +55,6 @@ class PthreadWaiter : public
> WaiterCrtp<PthreadWaiter> {
> > - ABSL_NAMESPACE_END
> > - }  // namespace absl
> > -
> > --#endif  // ndef _WIN32
> > -+#endif  // !defined(_WIN32) && !defined(__MINGW32__)
> > -
> > - #endif  // ABSL_SYNCHRONIZATION_INTERNAL_PTHREAD_WAITER_H_
> > -diff --git a/absl/synchronization/internal/win32_waiter.h
> b/absl/synchronization/internal/win32_waiter.h
> > -index 87eb617c..fdab264e 100644
> > ---- a/absl/synchronization/internal/win32_waiter.h
> > -+++ b/absl/synchronization/internal/win32_waiter.h
> > -@@ -20,7 +20,8 @@
> > - #include <sdkddkver.h>
> > - #endif
> > -
> > --#if defined(_WIN32) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
> > -+#if defined(_WIN32) && !defined(__MINGW32__) && \
> > -+    _WIN32_WINNT >= _WIN32_WINNT_VISTA
> > -
> > - #include "absl/base/config.h"
> > - #include "absl/synchronization/internal/kernel_timeout.h"
> > -@@ -65,6 +66,7 @@ class Win32Waiter : public WaiterCrtp<Win32Waiter> {
> > - ABSL_NAMESPACE_END
> > - }  // namespace absl
> > -
> > --#endif  // defined(_WIN32) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
> > -+#endif  // defined(_WIN32) && !defined(__MINGW32__) &&
> > -+        // _WIN32_WINNT >= _WIN32_WINNT_VISTA
> > -
> > - #endif  // ABSL_SYNCHRONIZATION_INTERNAL_WIN32_WAITER_H_
> > diff --git a/meta-oe/recipes-devtools/abseil-cpp/abseil-
> cpp_20230802.1.bb b/meta-oe/recipes-devtools/abseil-cpp/abseil-
> cpp_20240116.1.bb
> > similarity index 59%
> > rename from meta-oe/recipes-devtools/abseil-cpp/abseil-cpp_20230802.1.bb
> > rename to meta-oe/recipes-devtools/abseil-cpp/abseil-cpp_20240116.1.bb
> > index 17db7b2e4..82b2d20e0 100644
> > --- a/meta-oe/recipes-devtools/abseil-cpp/abseil-cpp_20230802.1.bb
> > +++ b/meta-oe/recipes-devtools/abseil-cpp/abseil-cpp_20240116.1.bb
> > @@ -1,24 +1,26 @@
> >  SUMMARY = "Abseil is a cpp library like STL"
> >  DESCRIPTION = "Abseil provides pieces missing from the C++ standard.
> Contains \
> >  additional useful libraries like algorithm, container, debugging, hash,
> memory, \
> > -meta, numeric, strings, synchronization, time, types and utility."
> > +meta, numeric, strings, synchronization, time, types and utility"
> >  HOMEPAGE = "https://abseil.io/"
> >  SECTION = "libs"
> >  LICENSE = "Apache-2.0"
> >  LIC_FILES_CHKSUM =
> "file://LICENSE;md5=df52c6edb7adc22e533b2bacc3bd3915"
> >
> > -SRCREV = "fb3621f4f897824c0dbe0615fa94543df6192f30"
> > -BRANCH = "lts_2023_08_02"
> > +SRCREV = "2f9e432cce407ce0ae50676696666f33a77d42ac"
> > +BRANCH = "lts_2024_01_16"
> >  SRC_URI = "git://github.com/abseil/abseil-
> cpp;branch=${BRANCH};protocol=https \
> >             file://0001-absl-always-use-asm-sgidefs.h.patch
> \
> >             file://0002-Remove-maes-option-from-cross-compilation.patch
> \
> >             file://abseil-ppc-fixes.patch \
> >             file://0003-Remove-neon-option-from-cross-compilation.patch
> \
> > -           file://0004-Avoid-using-both-Win32Waiter-and-PthreadWaiter-
> on-Mi.patch \
> >            "
> >
> >  S = "${WORKDIR}/git"
> >
> > +ASNEEDED:class-native = ""
> > +ASNEEDED:class-nativesdk = ""
> > +
> >  inherit cmake
> >
> >  EXTRA_OECMAKE = "-DBUILD_SHARED_LIBS=ON \
> > @@ -26,29 +28,8 @@ EXTRA_OECMAKE = "-DBUILD_SHARED_LIBS=ON \
> >                   -DABSL_ENABLE_INSTALL=ON \
> >                  "
> >
> > -SYSROOT_DIRS:append:class-nativesdk:mingw32 = " ${bindir}"
> > -
> > -PACKAGES_DYNAMIC = "^libabsl-*"
> > -PACKAGES_DYNAMIC:class-native = ""
> > -
> > -PACKAGESPLITFUNCS =+ "split_dynamic_packages"
> > -
> > -python split_dynamic_packages() {
> > -    libdir = d.getVar('libdir')
> > -
> > -    libpackages = do_split_packages(
> > -        d,
> > -        root=libdir,
> > -        file_regex=r'^libabsl_(.*)\.so\..*$',
> > -        output_pattern='libabsl-%s',
> > -        description="abseil shared library %s",
> > -        prepend=True,
> > -        extra_depends='',
> > -    )
> > -    if libpackages:
> > -        d.appendVar('RDEPENDS:' + d.getVar('PN'), ' ' + '
> '.join(libpackages))
> > -}
> > +BBCLASSEXTEND = "native nativesdk"
> >
> > -ALLOW_EMPTY:${PN} = "1"
> > +SYSROOT_DIRS:append:class-nativesdk:mingw32 = " ${bindir}"
> >
> > -BBCLASSEXTEND = "native nativesdk"
> > +FILES:${PN}-dev += "${includedir} ${libdir}/cmake ${libdir}/pkgconfig"
> > --
> > 2.34.1
> >
> >
> >
> >
Martin Jansa March 11, 2024, 1:13 p.m. UTC | #4
> No idea how that was not detected before the below patch was integrated though.

You had the same chance to catch it on ML as me or khem..

On Mon, Mar 11, 2024 at 2:06 PM Peter Kjellerstedt
<peter.kjellerstedt@axis.com> wrote:
>
> > -----Original Message-----
> > From: openembedded-devel@lists.openembedded.org <openembedded-
> > devel@lists.openembedded.org> On Behalf Of Martin Jansa
> > Sent: den 10 mars 2024 14:54
> > To: wangmy@fujitsu.com; Peter Kjellerstedt <peter.kjellerstedt@axis.com>
> > Cc: openembedded-devel@lists.openembedded.org
> > Subject: Re: [oe] [meta-oe] [PATCH V2] abseil-cpp: upgrade 20230802.1 ->
> > 20240116.1
> >
> > Does this intentionally undo last 2 changes from Peter? The commit
> > message doesn't mention it
> >
> > https://git.openembedded.org/meta-openembedded/commit/?id=32eefcf1ca97a08ea85f62a72b676e447f1b79a0
> > https://git.openembedded.org/meta-openembedded/commit/?id=5c554c9b8cb63b5d0d5f434c28dd71c0f1843448
>
> I have no idea what happened there, but I assume they were somehow
> accidentally reverted. No idea how that was not detected before the below
> patch was integrated though.
>
> Anyway, I have sent updated patches to restore what was reverted.
>
> //Peter
>
> >
> > also looks like libabsl_flags is no longer provided by this version
> > (got failure from one recipe, will check if it's expected).
> >
> > Regards,
> >
> > On Fri, Mar 8, 2024 at 1:15 AM wangmy via lists.openembedded.org
> > <wangmy=fujitsu.com@lists.openembedded.org> wrote:
> > >
> > > From: Wang Mingyu <wangmy@fujitsu.com>
> > >
> > > 0004-Avoid-using-both-Win32Waiter-and-PthreadWaiter-on-Mi.patch
> > > revmoed since it's included in 20240116.1.
> > >
> > > Changelog:
> > > ===========
> > > -Added absl::NoDestructor<T> to simplify defining static types that do
> > not need
> > >  to be destructed upon program exit.
> > > -Added configurable verbose logging (also known as VLOG).
> > > -Added absl::Overload(), which returns a functor that provides overloads
> > based
> > >  on the functors passed to it.
> > > -Bzlmod is now officially supported (previously it was supported by the
> > community).
> > >
> > > Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
> > > ---
> > >  ...-Win32Waiter-and-PthreadWaiter-on-Mi.patch | 62 -------------------
> > >  ...20230802.1.bb => abseil-cpp_20240116.1.bb} | 37 +++--------
> > >  2 files changed, 9 insertions(+), 90 deletions(-)
> > >  delete mode 100644 meta-oe/recipes-devtools/abseil-cpp/abseil-cpp/0004-
> > Avoid-using-both-Win32Waiter-and-PthreadWaiter-on-Mi.patch
> > >  rename meta-oe/recipes-devtools/abseil-cpp/{abseil-cpp_20230802.1.bb =>
> > abseil-cpp_20240116.1.bb} (59%)
> > >
> > > diff --git a/meta-oe/recipes-devtools/abseil-cpp/abseil-cpp/0004-Avoid-
> > using-both-Win32Waiter-and-PthreadWaiter-on-Mi.patch b/meta-oe/recipes-
> > devtools/abseil-cpp/abseil-cpp/0004-Avoid-using-both-Win32Waiter-and-
> > PthreadWaiter-on-Mi.patch
> > > deleted file mode 100644
> > > index db559bb16..000000000
> > > --- a/meta-oe/recipes-devtools/abseil-cpp/abseil-cpp/0004-Avoid-using-
> > both-Win32Waiter-and-PthreadWaiter-on-Mi.patch
> > > +++ /dev/null
> > > @@ -1,62 +0,0 @@
> > > -From cb7665f39e23e95e2466390c60ee5a410780a3ed Mon Sep 17 00:00:00 2001
> > > -From: Derek Mauro <dmauro@google.com>
> > > -Date: Wed, 8 Nov 2023 09:55:31 -0800
> > > -Subject: [PATCH] Avoid using both Win32Waiter and PthreadWaiter on
> > MinGW, and
> > > - use StdcppWaiter instead.
> > > -
> > > -There are various flavors of MinGW, some of which support pthread,
> > > -and some of which support Win32. Instead of figuring out which
> > > -platform is being used, just use the generic implementation.
> > > -
> > > -PiperOrigin-RevId: 580565507
> > > -Change-Id: Ia85fd7496f1e6ebdeadb95202f0039e844826118
> > > -Upstream-Status: Backport
> > > ----
> > > - absl/synchronization/internal/pthread_waiter.h | 4 ++--
> > > - absl/synchronization/internal/win32_waiter.h   | 6 ++++--
> > > - 2 files changed, 6 insertions(+), 4 deletions(-)
> > > -
> > > -diff --git a/absl/synchronization/internal/pthread_waiter.h
> > b/absl/synchronization/internal/pthread_waiter.h
> > > -index 206aefa4..23db76ad 100644
> > > ---- a/absl/synchronization/internal/pthread_waiter.h
> > > -+++ b/absl/synchronization/internal/pthread_waiter.h
> > > -@@ -16,7 +16,7 @@
> > > - #ifndef ABSL_SYNCHRONIZATION_INTERNAL_PTHREAD_WAITER_H_
> > > - #define ABSL_SYNCHRONIZATION_INTERNAL_PTHREAD_WAITER_H_
> > > -
> > > --#ifndef _WIN32
> > > -+#if !defined(_WIN32) && !defined(__MINGW32__)
> > > - #include <pthread.h>
> > > -
> > > - #include "absl/base/config.h"
> > > -@@ -55,6 +55,6 @@ class PthreadWaiter : public
> > WaiterCrtp<PthreadWaiter> {
> > > - ABSL_NAMESPACE_END
> > > - }  // namespace absl
> > > -
> > > --#endif  // ndef _WIN32
> > > -+#endif  // !defined(_WIN32) && !defined(__MINGW32__)
> > > -
> > > - #endif  // ABSL_SYNCHRONIZATION_INTERNAL_PTHREAD_WAITER_H_
> > > -diff --git a/absl/synchronization/internal/win32_waiter.h
> > b/absl/synchronization/internal/win32_waiter.h
> > > -index 87eb617c..fdab264e 100644
> > > ---- a/absl/synchronization/internal/win32_waiter.h
> > > -+++ b/absl/synchronization/internal/win32_waiter.h
> > > -@@ -20,7 +20,8 @@
> > > - #include <sdkddkver.h>
> > > - #endif
> > > -
> > > --#if defined(_WIN32) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
> > > -+#if defined(_WIN32) && !defined(__MINGW32__) && \
> > > -+    _WIN32_WINNT >= _WIN32_WINNT_VISTA
> > > -
> > > - #include "absl/base/config.h"
> > > - #include "absl/synchronization/internal/kernel_timeout.h"
> > > -@@ -65,6 +66,7 @@ class Win32Waiter : public WaiterCrtp<Win32Waiter> {
> > > - ABSL_NAMESPACE_END
> > > - }  // namespace absl
> > > -
> > > --#endif  // defined(_WIN32) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
> > > -+#endif  // defined(_WIN32) && !defined(__MINGW32__) &&
> > > -+        // _WIN32_WINNT >= _WIN32_WINNT_VISTA
> > > -
> > > - #endif  // ABSL_SYNCHRONIZATION_INTERNAL_WIN32_WAITER_H_
> > > diff --git a/meta-oe/recipes-devtools/abseil-cpp/abseil-
> > cpp_20230802.1.bb b/meta-oe/recipes-devtools/abseil-cpp/abseil-
> > cpp_20240116.1.bb
> > > similarity index 59%
> > > rename from meta-oe/recipes-devtools/abseil-cpp/abseil-cpp_20230802.1.bb
> > > rename to meta-oe/recipes-devtools/abseil-cpp/abseil-cpp_20240116.1.bb
> > > index 17db7b2e4..82b2d20e0 100644
> > > --- a/meta-oe/recipes-devtools/abseil-cpp/abseil-cpp_20230802.1.bb
> > > +++ b/meta-oe/recipes-devtools/abseil-cpp/abseil-cpp_20240116.1.bb
> > > @@ -1,24 +1,26 @@
> > >  SUMMARY = "Abseil is a cpp library like STL"
> > >  DESCRIPTION = "Abseil provides pieces missing from the C++ standard.
> > Contains \
> > >  additional useful libraries like algorithm, container, debugging, hash,
> > memory, \
> > > -meta, numeric, strings, synchronization, time, types and utility."
> > > +meta, numeric, strings, synchronization, time, types and utility"
> > >  HOMEPAGE = "https://abseil.io/"
> > >  SECTION = "libs"
> > >  LICENSE = "Apache-2.0"
> > >  LIC_FILES_CHKSUM =
> > "file://LICENSE;md5=df52c6edb7adc22e533b2bacc3bd3915"
> > >
> > > -SRCREV = "fb3621f4f897824c0dbe0615fa94543df6192f30"
> > > -BRANCH = "lts_2023_08_02"
> > > +SRCREV = "2f9e432cce407ce0ae50676696666f33a77d42ac"
> > > +BRANCH = "lts_2024_01_16"
> > >  SRC_URI = "git://github.com/abseil/abseil-
> > cpp;branch=${BRANCH};protocol=https \
> > >             file://0001-absl-always-use-asm-sgidefs.h.patch
> > \
> > >             file://0002-Remove-maes-option-from-cross-compilation.patch
> > \
> > >             file://abseil-ppc-fixes.patch \
> > >             file://0003-Remove-neon-option-from-cross-compilation.patch
> > \
> > > -           file://0004-Avoid-using-both-Win32Waiter-and-PthreadWaiter-
> > on-Mi.patch \
> > >            "
> > >
> > >  S = "${WORKDIR}/git"
> > >
> > > +ASNEEDED:class-native = ""
> > > +ASNEEDED:class-nativesdk = ""
> > > +
> > >  inherit cmake
> > >
> > >  EXTRA_OECMAKE = "-DBUILD_SHARED_LIBS=ON \
> > > @@ -26,29 +28,8 @@ EXTRA_OECMAKE = "-DBUILD_SHARED_LIBS=ON \
> > >                   -DABSL_ENABLE_INSTALL=ON \
> > >                  "
> > >
> > > -SYSROOT_DIRS:append:class-nativesdk:mingw32 = " ${bindir}"
> > > -
> > > -PACKAGES_DYNAMIC = "^libabsl-*"
> > > -PACKAGES_DYNAMIC:class-native = ""
> > > -
> > > -PACKAGESPLITFUNCS =+ "split_dynamic_packages"
> > > -
> > > -python split_dynamic_packages() {
> > > -    libdir = d.getVar('libdir')
> > > -
> > > -    libpackages = do_split_packages(
> > > -        d,
> > > -        root=libdir,
> > > -        file_regex=r'^libabsl_(.*)\.so\..*$',
> > > -        output_pattern='libabsl-%s',
> > > -        description="abseil shared library %s",
> > > -        prepend=True,
> > > -        extra_depends='',
> > > -    )
> > > -    if libpackages:
> > > -        d.appendVar('RDEPENDS:' + d.getVar('PN'), ' ' + '
> > '.join(libpackages))
> > > -}
> > > +BBCLASSEXTEND = "native nativesdk"
> > >
> > > -ALLOW_EMPTY:${PN} = "1"
> > > +SYSROOT_DIRS:append:class-nativesdk:mingw32 = " ${bindir}"
> > >
> > > -BBCLASSEXTEND = "native nativesdk"
> > > +FILES:${PN}-dev += "${includedir} ${libdir}/cmake ${libdir}/pkgconfig"
> > > --
> > > 2.34.1
> > >
> > >
> > >
> > >
diff mbox series

Patch

diff --git a/meta-oe/recipes-devtools/abseil-cpp/abseil-cpp/0004-Avoid-using-both-Win32Waiter-and-PthreadWaiter-on-Mi.patch b/meta-oe/recipes-devtools/abseil-cpp/abseil-cpp/0004-Avoid-using-both-Win32Waiter-and-PthreadWaiter-on-Mi.patch
deleted file mode 100644
index db559bb16..000000000
--- a/meta-oe/recipes-devtools/abseil-cpp/abseil-cpp/0004-Avoid-using-both-Win32Waiter-and-PthreadWaiter-on-Mi.patch
+++ /dev/null
@@ -1,62 +0,0 @@ 
-From cb7665f39e23e95e2466390c60ee5a410780a3ed Mon Sep 17 00:00:00 2001
-From: Derek Mauro <dmauro@google.com>
-Date: Wed, 8 Nov 2023 09:55:31 -0800
-Subject: [PATCH] Avoid using both Win32Waiter and PthreadWaiter on MinGW, and
- use StdcppWaiter instead.
-
-There are various flavors of MinGW, some of which support pthread,
-and some of which support Win32. Instead of figuring out which
-platform is being used, just use the generic implementation.
-
-PiperOrigin-RevId: 580565507
-Change-Id: Ia85fd7496f1e6ebdeadb95202f0039e844826118
-Upstream-Status: Backport
----
- absl/synchronization/internal/pthread_waiter.h | 4 ++--
- absl/synchronization/internal/win32_waiter.h   | 6 ++++--
- 2 files changed, 6 insertions(+), 4 deletions(-)
-
-diff --git a/absl/synchronization/internal/pthread_waiter.h b/absl/synchronization/internal/pthread_waiter.h
-index 206aefa4..23db76ad 100644
---- a/absl/synchronization/internal/pthread_waiter.h
-+++ b/absl/synchronization/internal/pthread_waiter.h
-@@ -16,7 +16,7 @@
- #ifndef ABSL_SYNCHRONIZATION_INTERNAL_PTHREAD_WAITER_H_
- #define ABSL_SYNCHRONIZATION_INTERNAL_PTHREAD_WAITER_H_
- 
--#ifndef _WIN32
-+#if !defined(_WIN32) && !defined(__MINGW32__)
- #include <pthread.h>
- 
- #include "absl/base/config.h"
-@@ -55,6 +55,6 @@ class PthreadWaiter : public WaiterCrtp<PthreadWaiter> {
- ABSL_NAMESPACE_END
- }  // namespace absl
- 
--#endif  // ndef _WIN32
-+#endif  // !defined(_WIN32) && !defined(__MINGW32__)
- 
- #endif  // ABSL_SYNCHRONIZATION_INTERNAL_PTHREAD_WAITER_H_
-diff --git a/absl/synchronization/internal/win32_waiter.h b/absl/synchronization/internal/win32_waiter.h
-index 87eb617c..fdab264e 100644
---- a/absl/synchronization/internal/win32_waiter.h
-+++ b/absl/synchronization/internal/win32_waiter.h
-@@ -20,7 +20,8 @@
- #include <sdkddkver.h>
- #endif
- 
--#if defined(_WIN32) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
-+#if defined(_WIN32) && !defined(__MINGW32__) && \
-+    _WIN32_WINNT >= _WIN32_WINNT_VISTA
- 
- #include "absl/base/config.h"
- #include "absl/synchronization/internal/kernel_timeout.h"
-@@ -65,6 +66,7 @@ class Win32Waiter : public WaiterCrtp<Win32Waiter> {
- ABSL_NAMESPACE_END
- }  // namespace absl
- 
--#endif  // defined(_WIN32) && _WIN32_WINNT >= _WIN32_WINNT_VISTA
-+#endif  // defined(_WIN32) && !defined(__MINGW32__) &&
-+        // _WIN32_WINNT >= _WIN32_WINNT_VISTA
- 
- #endif  // ABSL_SYNCHRONIZATION_INTERNAL_WIN32_WAITER_H_
diff --git a/meta-oe/recipes-devtools/abseil-cpp/abseil-cpp_20230802.1.bb b/meta-oe/recipes-devtools/abseil-cpp/abseil-cpp_20240116.1.bb
similarity index 59%
rename from meta-oe/recipes-devtools/abseil-cpp/abseil-cpp_20230802.1.bb
rename to meta-oe/recipes-devtools/abseil-cpp/abseil-cpp_20240116.1.bb
index 17db7b2e4..82b2d20e0 100644
--- a/meta-oe/recipes-devtools/abseil-cpp/abseil-cpp_20230802.1.bb
+++ b/meta-oe/recipes-devtools/abseil-cpp/abseil-cpp_20240116.1.bb
@@ -1,24 +1,26 @@ 
 SUMMARY = "Abseil is a cpp library like STL"
 DESCRIPTION = "Abseil provides pieces missing from the C++ standard. Contains \
 additional useful libraries like algorithm, container, debugging, hash, memory, \
-meta, numeric, strings, synchronization, time, types and utility."
+meta, numeric, strings, synchronization, time, types and utility"
 HOMEPAGE = "https://abseil.io/"
 SECTION = "libs"
 LICENSE = "Apache-2.0"
 LIC_FILES_CHKSUM = "file://LICENSE;md5=df52c6edb7adc22e533b2bacc3bd3915"
 
-SRCREV = "fb3621f4f897824c0dbe0615fa94543df6192f30"
-BRANCH = "lts_2023_08_02"
+SRCREV = "2f9e432cce407ce0ae50676696666f33a77d42ac"
+BRANCH = "lts_2024_01_16"
 SRC_URI = "git://github.com/abseil/abseil-cpp;branch=${BRANCH};protocol=https \
            file://0001-absl-always-use-asm-sgidefs.h.patch             \
            file://0002-Remove-maes-option-from-cross-compilation.patch \
            file://abseil-ppc-fixes.patch \
            file://0003-Remove-neon-option-from-cross-compilation.patch \
-           file://0004-Avoid-using-both-Win32Waiter-and-PthreadWaiter-on-Mi.patch \
           "
 
 S = "${WORKDIR}/git"
 
+ASNEEDED:class-native = ""
+ASNEEDED:class-nativesdk = ""
+
 inherit cmake
 
 EXTRA_OECMAKE = "-DBUILD_SHARED_LIBS=ON \
@@ -26,29 +28,8 @@  EXTRA_OECMAKE = "-DBUILD_SHARED_LIBS=ON \
                  -DABSL_ENABLE_INSTALL=ON \
                 "
 
-SYSROOT_DIRS:append:class-nativesdk:mingw32 = " ${bindir}"
-
-PACKAGES_DYNAMIC = "^libabsl-*"
-PACKAGES_DYNAMIC:class-native = ""
-
-PACKAGESPLITFUNCS =+ "split_dynamic_packages"
-
-python split_dynamic_packages() {
-    libdir = d.getVar('libdir')
-
-    libpackages = do_split_packages(
-        d,
-        root=libdir,
-        file_regex=r'^libabsl_(.*)\.so\..*$',
-        output_pattern='libabsl-%s',
-        description="abseil shared library %s",
-        prepend=True,
-        extra_depends='',
-    )
-    if libpackages:
-        d.appendVar('RDEPENDS:' + d.getVar('PN'), ' ' + ' '.join(libpackages))
-}
+BBCLASSEXTEND = "native nativesdk"
 
-ALLOW_EMPTY:${PN} = "1"
+SYSROOT_DIRS:append:class-nativesdk:mingw32 = " ${bindir}"
 
-BBCLASSEXTEND = "native nativesdk"
+FILES:${PN}-dev += "${includedir} ${libdir}/cmake ${libdir}/pkgconfig"