[mythtv-commits] [MythTV/mythtv] 18163e: Update for recent C++ library removal of std::chro...

David Hampton noreply at github.com
Mon Oct 20 03:35:11 UTC 2025


  Branch: refs/heads/fixes/35
  Home:   https://github.com/MythTV/mythtv
  Commit: 18163eb5204a2762ce3b5eeec2022576a8ead0e5
      https://github.com/MythTV/mythtv/commit/18163eb5204a2762ce3b5eeec2022576a8ead0e5
  Author: David Hampton <mythtv at love2code.net>
  Date:   2025-10-19 (Sun, 19 Oct 2025)

  Changed paths:
    M mythtv/cmake/MythCheckIncludes.cmake
    M mythtv/configure
    M mythtv/libs/libmythbase/configuration.h
    M mythtv/libs/libmythbase/mythconfig.h.in
    M mythtv/libs/libmythbase/mythcorecontext.h
    M mythtv/libs/libmythmetadata/musicmetadata.h
    M mythtv/libs/libmythtv/playgroup.h
    M mythtv/libs/libmythui/mythuispinbox.h

  Log Message:
  -----------
  Update for recent C++ library removal of std::chrono::__is_duration.

Early C++ libraries used __is_duration<T>::value to determine if a
type was derived from std::chrono::duration, and then later introduced
the shorter form __is_duration_v<T>.  Clang version 20 has removed the
original so MythTV no longer compiles.  Update the MythTV code to
prefer the newer form for determining if something is a duration.

Gcc libc++ 20240719 doesn't have __is_duration_v<T>, and 20240904
does.

The need for __has_include is unfortunate but necessary, as the
mythconfig.h file is in a different location depending on whether the
file being compiled lives under the mythtv or mythplugins directory.
These includes can be removed once all supported platforms have been
upgraded to a libc++/libcxx that has __is_duration_v<T>.

(cherry picked from commit 7c781b38604e2d4751f427c0527cc73d75bf7ca6)



To unsubscribe from these emails, change your notification settings at https://github.com/MythTV/mythtv/settings/notifications


More information about the mythtv-commits mailing list