5 Commits
Author SHA1 Message Date
Xisco Fauli 649ea69f09 boost: upgrade to 1_88_0
* external/boost/armv7.patch.0 and
external/boost/0001-Avoid-Wdeprecated-variadic-comma-omission-with-GCC-1.patch.2
have been fixed upstream

* ignore warning 4996 in vcl/source/window/layout.cxx, otherwise it started to fail with
[build CXX] vcl/source/window/layout.cxx
C:\cygwin64\home\tdf\jenkins\workspace\gerrit_windows\workdir\UnpackedTarball\boost\boost/multi_array/storage_order.hpp(51): error C2220: the following warning is treated as an error
C:\cygwin64\home\tdf\jenkins\workspace\gerrit_windows\workdir\UnpackedTarball\boost\boost/multi_array/storage_order.hpp(51): warning C4996: 'boost::array<bool,2>::assign': please use `fill` instead
C:\cygwin64\home\tdf\jenkins\workspace\gerrit_windows\workdir\UnpackedTarball\boost\boost/multi_array/storage_order.hpp(47): note: while compiling class template member function 'boost::general_storage_order<2>::general_storage_order(const boost::c_storage_order &)'
C:\cygwin64\home\tdf\jenkins\workspace\gerrit_windows\workdir\UnpackedTarball\boost\boost/multi_array.hpp(153): note: see reference to function template instantiation 'boost::general_storage_order<2>::general_storage_order(const boost::c_storage_order &)' being compiled
C:\cygwin64\home\tdf\jenkins\workspace\gerrit_windows\workdir\UnpackedTarball\boost\boost/multi_array/multi_array_ref.hpp(350): note: see reference to class template instantiation 'boost::general_storage_order<2>' being compiled
C:\cygwin64\home\tdf\jenkins\workspace\gerrit_windows\workdir\UnpackedTarball\boost\boost/multi_array/multi_array_ref.hpp(414): note: see reference to class template instantiation 'boost::const_multi_array_ref<T,2,T *>' being compiled
        with
        [
            T=`anonymous-namespace'::GridEntry
        ]
C:\cygwin64\home\tdf\jenkins\workspace\gerrit_windows\workdir\UnpackedTarball\boost\boost/multi_array.hpp(122): note: see reference to class template instantiation 'boost::multi_array_ref<T,2>' being compiled
        with
        [
            T=`anonymous-namespace'::GridEntry
        ]
C:/cygwin64/home/tdf/jenkins/workspace/gerrit_windows/vcl/source/window/layout.cxx(905): note: see reference to class template instantiation 'boost::multi_array<`anonymous-namespace'::GridEntry,2,std::allocator<T>>' being compiled
        with
        [
            T=`anonymous-namespace'::GridEntry
        ]
C:\cygwin64\home\tdf\jenkins\workspace\gerrit_windows\workdir\UnpackedTarball\boost\boost/multi_array/multi_array_ref.hpp(343): warning C4996: 'boost::array<int,2>::assign': please use `fill` instead
C:\cygwin64\home\tdf\jenkins\workspace\gerrit_windows\workdir\UnpackedTarball\boost\boost/multi_array/multi_array_ref.hpp(325): note: while compiling class template member function 'boost::const_multi_array_ref<T,2,T *>::const_multi_array_ref(TPtr,const boost::general_storage_order<2> &,const int *,const unsigned int *)'
        with
        [
            T=`anonymous-namespace'::GridEntry,
            TPtr=`anonymous-namespace'::GridEntry *
        ]
C:\cygwin64\home\tdf\jenkins\workspace\gerrit_windows\workdir\UnpackedTarball\boost\boost/multi_array/multi_array_ref.hpp(616): note: see reference to function template instantiation 'boost::const_multi_array_ref<T,2,T *>::const_multi_array_ref(TPtr,const boost::general_storage_order<2> &,const int *,const unsigned int *)' being compiled
        with
        [
            T=`anonymous-namespace'::GridEntry,
            TPtr=`anonymous-namespace'::GridEntry *
        ]
C:\cygwin64\home\tdf\jenkins\workspace\gerrit_windows\workdir\UnpackedTarball\boost\boost/multi_array/view.hpp(234): warning C4996: 'boost::array<int,2>::assign': please use `fill` instead
C:\cygwin64\home\tdf\jenkins\workspace\gerrit_windows\workdir\UnpackedTarball\boost\boost/multi_array/view.hpp(434): note: see reference to function template instantiation 'boost::detail::multi_array::const_multi_array_view<T,2,T *>::const_multi_array_view<ExtentList,int>(TPtr,const ExtentList &,const boost::array<int,2> &)' being compiled
        with
        [
            T=`anonymous-namespace'::GridEntry,
            ExtentList=boost::array<int,2>,
            TPtr=`anonymous-namespace'::GridEntry *
        ]
C:\cygwin64\home\tdf\jenkins\workspace\gerrit_windows\workdir\UnpackedTarball\boost\boost/multi_array/view.hpp(434): note: see reference to function template instantiation 'boost::detail::multi_array::const_multi_array_view<T,2,T *>::const_multi_array_view<ExtentList,int>(TPtr,const ExtentList &,const boost::array<int,2> &)' being compiled
        with
        [
            T=`anonymous-namespace'::GridEntry,
            ExtentList=boost::array<int,2>,
            TPtr=`anonymous-namespace'::GridEntry *
        ]
C:\cygwin64\home\tdf\jenkins\workspace\gerrit_windows\workdir\UnpackedTarball\boost\boost/multi_array/base.hpp(490): note: see reference to function template instantiation 'boost::detail::multi_array::multi_array_view<T,2>::multi_array_view<boost::array<int,2>,int>(T *,const ExtentList &,const boost::array<int,2> &)' being compiled
        with
        [
            T=`anonymous-namespace'::GridEntry,
            ExtentList=boost::array<int,2>
        ]
C:\cygwin64\home\tdf\jenkins\workspace\gerrit_windows\workdir\UnpackedTarball\boost\boost/multi_array/base.hpp(487): note: see reference to function template instantiation 'boost::detail::multi_array::multi_array_view<T,2>::multi_array_view<boost::array<int,2>,int>(T *,const ExtentList &,const boost::array<int,2> &)' being compiled
        with
        [
            T=`anonymous-namespace'::GridEntry,
            ExtentList=boost::array<int,2>
        ]
C:\cygwin64\home\tdf\jenkins\workspace\gerrit_windows\workdir\UnpackedTarball\boost\boost/multi_array/multi_array_ref.hpp(539): note: see reference to function template instantiation 'ArrayRef boost::detail::multi_array::multi_array_impl_base<T,2>::generate_array_view<return_type,2,`anonymous-namespace'::GridEntry*>(boost::type<return_type>,const boost::detail::multi_array::index_gen<2,2> &,const unsigned int *,const int *,const int *,TPtr) const' being compiled
        with
        [
            ArrayRef=return_type,
            T=`anonymous-namespace'::GridEntry,
            TPtr=`anonymous-namespace'::GridEntry *
        ]
C:\cygwin64\home\tdf\jenkins\workspace\gerrit_windows\workdir\UnpackedTarball\boost\boost/multi_array/multi_array_ref.hpp(533): note: see reference to function template instantiation 'ArrayRef boost::detail::multi_array::multi_array_impl_base<T,2>::generate_array_view<return_type,2,`anonymous-namespace'::GridEntry*>(boost::type<return_type>,const boost::detail::multi_array::index_gen<2,2> &,const unsigned int *,const int *,const int *,TPtr) const' being compiled
        with
        [
            ArrayRef=return_type,
            T=`anonymous-namespace'::GridEntry,
            TPtr=`anonymous-namespace'::GridEntry *
        ]
C:\cygwin64\home\tdf\jenkins\workspace\gerrit_windows\workdir\UnpackedTarball\boost\boost/multi_array.hpp(494): note: see reference to function template instantiation 'boost::detail::multi_array::multi_array_view<T,2> boost::multi_array_ref<T,2>::operator []<2>(const boost::detail::multi_array::index_gen<2,2> &)' being compiled
        with
        [
            T=`anonymous-namespace'::GridEntry
        ]
C:\cygwin64\home\tdf\jenkins\workspace\gerrit_windows\workdir\UnpackedTarball\boost\boost/multi_array.hpp(494): note: see reference to function template instantiation 'boost::detail::multi_array::multi_array_view<T,2> boost::multi_array_ref<T,2>::operator []<2>(const boost::detail::multi_array::index_gen<2,2> &)' being compiled
        with
        [
            T=`anonymous-namespace'::GridEntry
        ]
C:\cygwin64\home\tdf\jenkins\workspace\gerrit_windows\workdir\UnpackedTarball\boost\boost/multi_array.hpp(454): note: while compiling class template member function 'boost::multi_array<`anonymous-namespace'::GridEntry,2,std::allocator<T>> &boost::multi_array<T,2,std::allocator<T>>::resize(const boost::detail::multi_array::extent_gen<2> &)'
        with
        [
            T=`anonymous-namespace'::GridEntry
        ]
C:/cygwin64/home/tdf/jenkins/workspace/gerrit_windows/vcl/source/window/layout.cxx(928): note: see reference to function template instantiation 'boost::multi_array<`anonymous-namespace'::GridEntry,2,std::allocator<T>> &boost::multi_array<T,2,std::allocator<T>>::resize(const boost::detail::multi_array::extent_gen<2> &)' being compiled
        with
        [
            T=`anonymous-namespace'::GridEntry
        ]
make[1]: *** [C:/cygwin64/home/tdf/jenkins/workspace/gerrit_windows/solenv/gbuild/LinkTarget.mk:339: C:/cygwin64/home/tdf/jenkins/workspace/gerrit_windows/workdir/CxxObject/vcl/source/window/layout.o] Error 2

<https://dev-www.libreoffice.org/src/boost_1_88_0.tar.xz> has been generated (on
Debian 12) with

> $ wget https://boostorg.jfrog.io/artifactory/main/release/1.88.0/source/boost_1_88_0.tar.bz2
> $ printf '46d9d2c06637b219270877c9e16155cbd015b6dc84349af064c088e9b5b12f7b boost_1_88_0.tar.bz2' | sha256sum -c # cf. <https://www.boost.org/users/history/version_1_88_0.html>
> boost_1_88_0.tar.bz2: OK
> $ external/boost/repack_tarball.sh boost_1_88_0.tar.bz2
> Unpacking boost_1_88_0.tar.bz2 ...
> Removing unnecessary files ...
> Creating boost_1_88_0.tar.xz ...
> Cleaning up ...
> 5c67a448c562f1606e38203ba7ed7e8d7453581b6b9ca324e96205eae0da5ff8  boost_1_87_0.tar.xz
> Done.

Change-Id: Ib5f613b34ffb161348b1fd7653cce0d12da98994
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/184035
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
2025-04-11 23:35:47 +02:00
Stephan Bergmann 8daa8eef06 Upgrade external/boost to latest Boost 1.82.0
<https://dev-www.libreoffice.org/src/boost_1_82_0.tar.xz> has been generated (on
Fedora 38) with

> $ wget https://boostorg.jfrog.io/artifactory/main/release/1.82.0/source/boost_1_82_0.tar.bz2
> $ printf 'a6e1ab9b0860e6a2881dd7b21fe9f737a095e5f33a3a874afc6a345228597ee6 boost_1_82_0.tar.bz2' | sha256sum -c # cf. <https://www.boost.org/users/history/version_1_82_0.html>
> boost_1_82_0.tar.bz2: OK
> $ external/boost/repack_tarball.sh boost_1_82_0.tar.bz2
> Unpacking boost_1_82_0.tar.bz2 ...
> Removing unnecessary files ...
> Creating boost_1_82_0.tar.xz ...
> Cleaning up ...
> e48ab6953fbd68ba47234bea5173e62427e9f6a7894e152305142895cfe955de  boost_1_82_0.tar.xz
> Done.

* Updating StaticLibrary_boost_locale.mk is needed to avoid
> workdir/UnpackedTarball/boost/libs/locale/src/boost/locale/util/locale_data.cpp:137: error: undefined reference to 'boost::locale::util::normalize_encoding(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'

Change-Id: Iff3f5249df0fcf75f5a50e7eb35ef64373af8184
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/150516
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2023-04-17 18:59:32 +02:00
Stephan Bergmann ed259e5efe Upgrade external/boost to latest Boost 1.81.0
<https://dev-www.libreoffice.org/src/boost_1_81_0.tar.xz> has been generated (on
Fedora 37) with

> $ wget https://boostorg.jfrog.io/artifactory/main/release/1.81.0/source/boost_1_81_0.tar.bz2
> $ printf '71feeed900fbccca04a3b4f2f84a7c217186f28a940ed8b7ed4725986baf99fa boost_1_81_0.tar.bz2' | sha256sum -c # cf. <https://www.boost.org/users/history/version_1_81_0.html>
> boost_1_81_0.tar.bz2: OK
> $ external/boost/repack_tarball.sh boost_1_81_0.tar.bz2
> Unpacking boost_1_81_0.tar.bz2 ...
> Removing unnecessary files ...
> Creating boost_1_81_0.tar.xz ...
> Cleaning up ...
> 1deb0a5a9e33a6626fcaa1d2efd4c0e74ca2b0eea87c1559e3917f3066b633d6  boost_1_81_0.tar.xz
> Done.

* external/boost/windows-no-utf8-locales.patch.0, introduced with
  f046fed278 "Don't ever attempt to initialise a
  std::locale with a UTF-8 locale on Windows", was presumably obsoleted by
  <https://github.com/boostorg/locale/commit/f45adfc9b963feacc827c3754e2549dd0cffaecb>
  "Use UTF-16 <-> UTF-8 codecvt on Windows".

* external/boost/libc++.patch.0 was obsoleted by
  <https://github.com/boostorg/config/commit/f0af4a9184457939b89110795ae2d293582c5f66>
  "The std lib unary/binary_function base classes are deprecated/removed from
  libcpp15."

* external/boost/0001-Change-mpl-integral_c-to-boost-integral_constant-to-.patch.2
  was obsoleted by
  <https://github.com/boostorg/numeric_conversion/commit/50a1eae942effb0a9b90724323ef8f2a67e7984a>
  "Change mpl::integral_c to boost::integral_constant to avoid Clang 16 errors
  when constructing out of range enums (refs #24, boostorg/mpl#69)".

* external/boost/0001-Avoid-boost-phoenix-placeholders-uarg1.10-ODR-violat.patch.2
  is needed to e.g. avoid
> ./.libs/libetonyek_internal.a(libetonyek_internal_la-KEY1DivElement.o):(.bss+0x3e): multiple definition of `boost::phoenix::placeholders::uarg1'; ./.libs/libetonyek_internal.a(libetonyek_internal_la-IWORKFormula.o):(.bss+0x3e): first defined here
  etc. while building ExternalProject_libetonyek, caused by
  <https://github.com/boostorg/phoenix/commit/8b6a9c26c115bc2cefea300b5c0abf7edf6dd9b7>
  "std::tuple support (Resolving #103) (#104)".

Change-Id: I48773166d0c50f2850d8bb37fa6215d9e5c0d51d
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/145044
Tested-by: Jenkins
Reviewed-by: Tor Lillqvist <tml@collabora.com>
2023-01-05 07:14:18 +00:00
Stephan Bergmann 3a04cfe27b Upgrade external/boost to latest Boost 1.80.0
<https://dev-www.libreoffice.org/src/boost_1_80_0.tar.xz> has been generated (on
Fedora 36) with

> $ wget https://boostorg.jfrog.io/artifactory/main/release/1.80.0/source/boost_1_80_0.tar.bz2
> $ printf '1e19565d82e43bc59209a168f5ac899d3ba471d55c7610c677d4ccf2c9c500c0 boost_1_80_0.tar.bz2' | sha256sum -c # cf. <https://www.boost.org/users/history/version_1_80_0.html>
> boost_1_80_0.tar.bz2: OK
> $ external/boost/repack_tarball.sh boost_1_80_0.tar.bz2
> Unpacking boost_1_80_0.tar.bz2 ...
> Removing unnecessary files ...
> Creating boost_1_80_0.tar.xz ...
> Cleaning up ...
> 322e567e98c466c0aa0e380ed8c647552fe4af48998648428f1b5f0c8eff4666  boost_1_80_0.tar.xz
> Done.

* In StaticLibrary_boost_filesystem,
<https://github.com/boostorg/filesystem/commit/36cf9aaf816a39dce3d32e2bfe09e214d7f3ab64>
"Updated protection of remove_all against CVE-2022-21658 on POSIX" had
introduced uses of certain POSIX *at functions (like utimensat) conditionally on
some new BOOST_FILESYSTEM_HAS_POSIX_AT_APIS, to be discovered by
workdir/UnpackedTarball/boost/libs/filesystem/CMakeLists.txt which we don't run.
At least AT_NO_AUTOMOUNT, as used in
workdir/UnpackedTarball/boost/libs/filesystem/src/operations.cpp, appears to be
unavailable on the macOS baseline, but otherwise assume that all that POSIX
functionality is available on all other non-Windows baselines and hardcode that
in external/boost/StaticLibrary_boost_filesystem.mk.  (If it turns out that we
need to exclude some more platforms there, we /might/ need to backport
<https://github.com/boostorg/filesystem/commit/5864f397ccad30f6e73221b90bdac57a303b9752>
"Fixed a missing include on POSIX systems that don't support *at APIs" from the
develop branch towards Boost 1.81.)

* In StaticLibrary_boost_locale,
<https://github.com/boostorg/locale/commit/41868c62a0519799696b544518f1efd831ff71c2>
"Support systems without implicit include path" had moved source files around
(and then would have failed with

> workdir/UnpackedTarball/boost/libs/locale/src/boost/locale/shared/mo_lambda.cpp:7:10: fatal error: 'boost/locale/shared/mo_lambda.hpp' file not found
> #include "boost/locale/shared/mo_lambda.hpp"
>          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

etc. without the additional -I option).

* Some Clang builds would have started to fail with

> In file included from desktop/qa/unit/desktop-lok-init.cxx:19:
> In file included from desktop/inc/lib/init.hxx:20:
> In file included from workdir/UnpackedTarball/boost/boost/container/flat_map.hpp:26:
> workdir/UnpackedTarball/boost/boost/container/new_allocator.hpp:168:12: error: '__cpp_sized_deallocation' is not defined, evaluates to 0 [-Werror,-Wundef]
>       # if __cpp_sized_deallocation
>            ^

so add another external/boost/include/ wrapper.

Change-Id: I5e53f7ddab07eadba9bdf653acad571f50517b46
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/138511
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2022-08-19 13:42:41 +02:00
Michael Meeks 7b7ed248c4 boost: use utf-8 encoding for unknown locales.
More exotic locales like es-419 cannot be parsed by boost, so we
fall-back to the default encoding. This avoids an exception:
invalid_charset_error of the form:

"Invalid or unsupported charset:us-ascii or UTF-8"

for this case.

Change-Id: I6796dd893ec774b221956ea9febbcc19495d47b5
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/130102
Tested-by: Jenkins
Reviewed-by: Michael Meeks <michael.meeks@collabora.com>
2022-02-18 12:35:49 +01:00