diff mbox series

[1/1] package/poco: needs C++17

Message ID 20240317094037.41936-1-fontaine.fabrice@gmail.com
State Accepted
Headers show
Series [1/1] package/poco: needs C++17 | expand

Commit Message

Fabrice Fontaine March 17, 2024, 9:40 a.m. UTC
poco needs C++17 and gcc >=8 since bump to version 1.13.2 in commit
433c4fd38b15efcf74b410e5068e2e51eeba6e46 and
https://github.com/pocoproject/poco/commit/78234857bf416b718455496800d1b7be3a0d0a53
https://github.com/pocoproject/poco/commit/10f41c06d9416a6ae0884c4827ea2a91bf5d2cf8
resulting in the following build failure with gcc 7:

In file included from src/Thread.cpp:28:0:
src/Thread_POSIX.cpp: In member function 'void Poco::ThreadImpl::setNameImpl(const string&)':
src/Thread_POSIX.cpp:162:56: error: no matching function for call to 'std::__cxx11::basic_string<char>::append(const string&, std::__cxx11::basic_string<char>::size_type)'
   truncName.append(threadName, threadName.size() - half);
                                                        ^

Fixes: 433c4fd38b15efcf74b410e5068e2e51eeba6e46
 - http://autobuild.buildroot.org/results/7b1c144f39a8be4ce8f964aa13a52d0bf62dd0aa

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
---
 package/poco/Config.in | 6 +++---
 package/poco/poco.mk   | 1 -
 2 files changed, 3 insertions(+), 4 deletions(-)

Comments

Arnout Vandecappelle March 17, 2024, 9:41 p.m. UTC | #1
On 17/03/2024 10:40, Fabrice Fontaine wrote:
> poco needs C++17 and gcc >=8 since bump to version 1.13.2 in commit
> 433c4fd38b15efcf74b410e5068e2e51eeba6e46 and
> https://github.com/pocoproject/poco/commit/78234857bf416b718455496800d1b7be3a0d0a53
> https://github.com/pocoproject/poco/commit/10f41c06d9416a6ae0884c4827ea2a91bf5d2cf8
> resulting in the following build failure with gcc 7:
> 
> In file included from src/Thread.cpp:28:0:
> src/Thread_POSIX.cpp: In member function 'void Poco::ThreadImpl::setNameImpl(const string&)':
> src/Thread_POSIX.cpp:162:56: error: no matching function for call to 'std::__cxx11::basic_string<char>::append(const string&, std::__cxx11::basic_string<char>::size_type)'
>     truncName.append(threadName, threadName.size() - half);
>                                                          ^
> 
> Fixes: 433c4fd38b15efcf74b410e5068e2e51eeba6e46
>   - http://autobuild.buildroot.org/results/7b1c144f39a8be4ce8f964aa13a52d0bf62dd0aa
> 
> Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>

  Applied to master, thanks, but I have a question below.

> ---
>   package/poco/Config.in | 6 +++---
>   package/poco/poco.mk   | 1 -
>   2 files changed, 3 insertions(+), 4 deletions(-)
> 
> diff --git a/package/poco/Config.in b/package/poco/Config.in
> index 7cb9987ec7..9bdef125ad 100644
> --- a/package/poco/Config.in
> +++ b/package/poco/Config.in
> @@ -12,7 +12,7 @@ config BR2_PACKAGE_POCO
>   	bool "poco"
>   	depends on BR2_INSTALL_LIBSTDCPP
>   	depends on BR2_USE_WCHAR
> -	depends on BR2_TOOLCHAIN_GCC_AT_LEAST_5 # C++14
> +	depends on BR2_TOOLCHAIN_GCC_AT_LEAST_8 # C++17
>   	# pthread_condattr_setclock
>   	depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL
>   	depends on !BR2_STATIC_LIBS # dlopen()
> @@ -116,8 +116,8 @@ config BR2_PACKAGE_POCO_ZIP
>   
>   endif # BR2_PACKAGE_POCO
>   
> -comment "poco needs a toolchain w/ wchar, NPTL, C++, dynamic library, gcc >= 5 w/ C++14"
> +comment "poco needs a toolchain w/ wchar, NPTL, C++, dynamic library, gcc >= 8"
>   	depends on !BR2_USE_WCHAR || !BR2_INSTALL_LIBSTDCPP \
>   		|| !BR2_TOOLCHAIN_HAS_THREADS_NPTL || BR2_STATIC_LIBS \
> -		|| !BR2_TOOLCHAIN_GCC_AT_LEAST_5
> +		|| !BR2_TOOLCHAIN_GCC_AT_LEAST_8
>   	depends on BR2_PACKAGE_POCO_ARCH_SUPPORTS
> diff --git a/package/poco/poco.mk b/package/poco/poco.mk
> index cc8a22fc2a..233252c67b 100644
> --- a/package/poco/poco.mk
> +++ b/package/poco/poco.mk
> @@ -68,7 +68,6 @@ define POCO_CONFIGURE_CMDS
>   	(cd $(@D); $(TARGET_MAKE_ENV) ./configure \
>   		--config=Linux \
>   		--prefix=/usr \
> -		--cflags=-std=c++14 \

  So the build system now passes -std=c++17 by itself? Or is C++17 already the 
default in GCC8?

  Regards,
  Arnout

>   		--ldflags="$(POCO_LDFLAGS)" \
>   		--omit="$(POCO_OMIT)" \
>   		$(POCO_CONF_OPTS) \
Fabrice Fontaine March 17, 2024, 9:46 p.m. UTC | #2
Hello,

Le dim. 17 mars 2024 à 22:41, Arnout Vandecappelle <arnout@mind.be> a écrit :
>
>
>
> On 17/03/2024 10:40, Fabrice Fontaine wrote:
> > poco needs C++17 and gcc >=8 since bump to version 1.13.2 in commit
> > 433c4fd38b15efcf74b410e5068e2e51eeba6e46 and
> > https://github.com/pocoproject/poco/commit/78234857bf416b718455496800d1b7be3a0d0a53
> > https://github.com/pocoproject/poco/commit/10f41c06d9416a6ae0884c4827ea2a91bf5d2cf8
> > resulting in the following build failure with gcc 7:
> >
> > In file included from src/Thread.cpp:28:0:
> > src/Thread_POSIX.cpp: In member function 'void Poco::ThreadImpl::setNameImpl(const string&)':
> > src/Thread_POSIX.cpp:162:56: error: no matching function for call to 'std::__cxx11::basic_string<char>::append(const string&, std::__cxx11::basic_string<char>::size_type)'
> >     truncName.append(threadName, threadName.size() - half);
> >                                                          ^
> >
> > Fixes: 433c4fd38b15efcf74b410e5068e2e51eeba6e46
> >   - http://autobuild.buildroot.org/results/7b1c144f39a8be4ce8f964aa13a52d0bf62dd0aa
> >
> > Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
>
>   Applied to master, thanks, but I have a question below.
>
> > ---
> >   package/poco/Config.in | 6 +++---
> >   package/poco/poco.mk   | 1 -
> >   2 files changed, 3 insertions(+), 4 deletions(-)
> >
> > diff --git a/package/poco/Config.in b/package/poco/Config.in
> > index 7cb9987ec7..9bdef125ad 100644
> > --- a/package/poco/Config.in
> > +++ b/package/poco/Config.in
> > @@ -12,7 +12,7 @@ config BR2_PACKAGE_POCO
> >       bool "poco"
> >       depends on BR2_INSTALL_LIBSTDCPP
> >       depends on BR2_USE_WCHAR
> > -     depends on BR2_TOOLCHAIN_GCC_AT_LEAST_5 # C++14
> > +     depends on BR2_TOOLCHAIN_GCC_AT_LEAST_8 # C++17
> >       # pthread_condattr_setclock
> >       depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL
> >       depends on !BR2_STATIC_LIBS # dlopen()
> > @@ -116,8 +116,8 @@ config BR2_PACKAGE_POCO_ZIP
> >
> >   endif # BR2_PACKAGE_POCO
> >
> > -comment "poco needs a toolchain w/ wchar, NPTL, C++, dynamic library, gcc >= 5 w/ C++14"
> > +comment "poco needs a toolchain w/ wchar, NPTL, C++, dynamic library, gcc >= 8"
> >       depends on !BR2_USE_WCHAR || !BR2_INSTALL_LIBSTDCPP \
> >               || !BR2_TOOLCHAIN_HAS_THREADS_NPTL || BR2_STATIC_LIBS \
> > -             || !BR2_TOOLCHAIN_GCC_AT_LEAST_5
> > +             || !BR2_TOOLCHAIN_GCC_AT_LEAST_8
> >       depends on BR2_PACKAGE_POCO_ARCH_SUPPORTS
> > diff --git a/package/poco/poco.mk b/package/poco/poco.mk
> > index cc8a22fc2a..233252c67b 100644
> > --- a/package/poco/poco.mk
> > +++ b/package/poco/poco.mk
> > @@ -68,7 +68,6 @@ define POCO_CONFIGURE_CMDS
> >       (cd $(@D); $(TARGET_MAKE_ENV) ./configure \
> >               --config=Linux \
> >               --prefix=/usr \
> > -             --cflags=-std=c++14 \
>
>   So the build system now passes -std=c++17 by itself? Or is C++17 already the
> default in GCC8?

Build system already passes -std=c++17 by itself since at least
version 1.13.0 and
https://github.com/pocoproject/poco/commit/6dad8502d365cb20cc2224dc5d922fb021898ccb

>
>   Regards,
>   Arnout
>
> >               --ldflags="$(POCO_LDFLAGS)" \
> >               --omit="$(POCO_OMIT)" \
> >               $(POCO_CONF_OPTS) \

Best Regards,

Fabrice
Peter Korsgaard March 22, 2024, 7:57 p.m. UTC | #3
>>>>> "Fabrice" == Fabrice Fontaine <fontaine.fabrice@gmail.com> writes:

 > poco needs C++17 and gcc >=8 since bump to version 1.13.2 in commit
 > 433c4fd38b15efcf74b410e5068e2e51eeba6e46 and
 > https://github.com/pocoproject/poco/commit/78234857bf416b718455496800d1b7be3a0d0a53
 > https://github.com/pocoproject/poco/commit/10f41c06d9416a6ae0884c4827ea2a91bf5d2cf8
 > resulting in the following build failure with gcc 7:

 > In file included from src/Thread.cpp:28:0:
 > src/Thread_POSIX.cpp: In member function 'void Poco::ThreadImpl::setNameImpl(const string&)':
 > src/Thread_POSIX.cpp:162:56: error: no matching function for call to 'std::__cxx11::basic_string<char>::append(const string&, std::__cxx11::basic_string<char>::size_type)'
 >    truncName.append(threadName, threadName.size() - half);
 >                                                         ^

 > Fixes: 433c4fd38b15efcf74b410e5068e2e51eeba6e46
 >  - http://autobuild.buildroot.org/results/7b1c144f39a8be4ce8f964aa13a52d0bf62dd0aa

 > Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>

Committed to 2024.02.x, 2023.02.x and 2023.11.x, thanks.
diff mbox series

Patch

diff --git a/package/poco/Config.in b/package/poco/Config.in
index 7cb9987ec7..9bdef125ad 100644
--- a/package/poco/Config.in
+++ b/package/poco/Config.in
@@ -12,7 +12,7 @@  config BR2_PACKAGE_POCO
 	bool "poco"
 	depends on BR2_INSTALL_LIBSTDCPP
 	depends on BR2_USE_WCHAR
-	depends on BR2_TOOLCHAIN_GCC_AT_LEAST_5 # C++14
+	depends on BR2_TOOLCHAIN_GCC_AT_LEAST_8 # C++17
 	# pthread_condattr_setclock
 	depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL
 	depends on !BR2_STATIC_LIBS # dlopen()
@@ -116,8 +116,8 @@  config BR2_PACKAGE_POCO_ZIP
 
 endif # BR2_PACKAGE_POCO
 
-comment "poco needs a toolchain w/ wchar, NPTL, C++, dynamic library, gcc >= 5 w/ C++14"
+comment "poco needs a toolchain w/ wchar, NPTL, C++, dynamic library, gcc >= 8"
 	depends on !BR2_USE_WCHAR || !BR2_INSTALL_LIBSTDCPP \
 		|| !BR2_TOOLCHAIN_HAS_THREADS_NPTL || BR2_STATIC_LIBS \
-		|| !BR2_TOOLCHAIN_GCC_AT_LEAST_5
+		|| !BR2_TOOLCHAIN_GCC_AT_LEAST_8
 	depends on BR2_PACKAGE_POCO_ARCH_SUPPORTS
diff --git a/package/poco/poco.mk b/package/poco/poco.mk
index cc8a22fc2a..233252c67b 100644
--- a/package/poco/poco.mk
+++ b/package/poco/poco.mk
@@ -68,7 +68,6 @@  define POCO_CONFIGURE_CMDS
 	(cd $(@D); $(TARGET_MAKE_ENV) ./configure \
 		--config=Linux \
 		--prefix=/usr \
-		--cflags=-std=c++14 \
 		--ldflags="$(POCO_LDFLAGS)" \
 		--omit="$(POCO_OMIT)" \
 		$(POCO_CONF_OPTS) \