[Bug 260040] net-im/telegram-desktop: fails to build on recent head (after clang 13 import)

From: <bugzilla-noreply_at_freebsd.org>
Date: Thu, 25 Nov 2021 08:45:27 UTC
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=260040

            Bug ID: 260040
           Summary: net-im/telegram-desktop: fails to build on recent head
                    (after clang 13 import)
           Product: Ports & Packages
           Version: Latest
          Hardware: Any
                OS: Any
            Status: New
          Severity: Affects Only Me
          Priority: ---
         Component: Individual Port(s)
          Assignee: glebius@FreeBSD.org
          Reporter: madpilot@FreeBSD.org
             Flags: maintainer-feedback?(glebius@FreeBSD.org)
          Assignee: glebius@FreeBSD.org

Hi,

I have recently updated my head installation and this port now fails to build.

I was actually able to fix this and the failures are caused by these two
dependencies:

net-im/tg_owt
devel/range-v3

which install include files that are invalid with clang 13 (Looks like
incompatibilities with C++17 and/or C++20)

No change is required in the telegram-desktop port, but I'm filing this to keep
everyone informed.

I'll file separate bug reports with patches for the two mentioned ports and set
those as dependencies of this one. Both patches are imported from upstream
sources.

These are the two errors I'm seeing:

-------------------
FAILED:
Telegram/CMakeFiles/lib_tgcalls.dir/ThirdParty/tgcalls/tgcalls/CodecSelectHelper.cpp.o 
/usr/bin/c++ -DBWE_TEST_LOGGING_COMPILE_TIME_ENABLE=0
-DDESKTOP_APP_DISABLE_CRASH_REPORTS -DDESKTOP_APP_DISABLE_WAYLAND_INTEGRATION
-DDESKTOP_APP_USE_PACKAGED -DHAVE_WEBRTC_VIDEO -DNO_MAIN_THREAD_WRAPPING
-DQT_IMPLICIT_QCHAR_CONSTRUCTION -DQT_NO_CAST_FROM_BYTEARRAY -DQT_NO_KEYWORDS
-DRTC_DISABLE_TRACE_EVENTS -DRTC_ENABLE_VP9 -DTGCALLS_USE_STD_OPTIONAL
-DWEBRTC_APM_DEBUG_DUMP=0 -DWEBRTC_APP_TDESKTOP -DWEBRTC_DUMMY_AUDIO_BUILD
-DWEBRTC_ENABLE_PROTOBUF=0 -DWEBRTC_FREEBSD
-DWEBRTC_INCLUDE_INTERNAL_AUDIO_DEVICE -DWEBRTC_LIBRARY_IMPL
-DWEBRTC_NON_STATIC_TRACE_EVENT_HANDLERS=1 -DWEBRTC_OPUS_SUPPORT_120MS_PTIME=1
-DWEBRTC_OPUS_VARIABLE_COMPLEXITY=0 -DWEBRTC_POSIX
-DWEBRTC_USE_BUILTIN_ISAC_FLOAT -DWEBRTC_USE_H264 -DWEBRTC_USE_PIPEWIRE
-DWEBRTC_USE_X11 -D_FORTIFY_SOURCE=2
-I/wrkdirs/usr/ports/net-im/telegram-desktop/work/tdesktop-3.2.5-full/Telegram/ThirdParty/tgcalls
-I/wrkdirs/usr/ports/net-im/telegram-desktop/work/tdesktop-3.2.5-full/Telegram/ThirdParty/tgcalls/tgcalls
-isystem /usr/local/include/tg_owt -isystem
/usr/local/include/tg_owt/third_party/libyuv/include -isystem
/usr/local/include/tg_owt/third_party/abseil-cpp -isystem /usr/local/include
-O2 -pipe -march=nehalem -fstack-protector-strong -fno-strict-aliasing 
-DNDEBUG -O2 -pipe -march=nehalem -fstack-protector-strong -fno-strict-aliasing
 -DNDEBUG -Wno-deprecated-volatile -Wno-ambiguous-reversed-operator
-fstack-protector-all -fstack-clash-protection -fPIC -fno-strict-aliasing -pipe
-Wall -W -Wno-unused-parameter -Wno-switch -Wno-missing-field-initializers
-Wno-sign-compare -std=gnu++20 -MD -MT
Telegram/CMakeFiles/lib_tgcalls.dir/ThirdParty/tgcalls/tgcalls/CodecSelectHelper.cpp.o
-MF
Telegram/CMakeFiles/lib_tgcalls.dir/ThirdParty/tgcalls/tgcalls/CodecSelectHelper.cpp.o.d
-o
Telegram/CMakeFiles/lib_tgcalls.dir/ThirdParty/tgcalls/tgcalls/CodecSelectHelper.cpp.o
-c
/wrkdirs/usr/ports/net-im/telegram-desktop/work/tdesktop-3.2.5-full/Telegram/ThirdParty/tgcalls/tgcalls/CodecSelectHelper.cpp
In file included from
/wrkdirs/usr/ports/net-im/telegram-desktop/work/tdesktop-3.2.5-full/Telegram/ThirdParty/tgcalls/tgcalls/CodecSelectHelper.cpp:1:
In file included from
/wrkdirs/usr/ports/net-im/telegram-desktop/work/tdesktop-3.2.5-full/Telegram/ThirdParty/tgcalls/tgcalls/CodecSelectHelper.h:4:
In file included from
/wrkdirs/usr/ports/net-im/telegram-desktop/work/tdesktop-3.2.5-full/Telegram/ThirdParty/tgcalls/tgcalls/Message.h:4:
In file included from /usr/local/include/tg_owt/api/candidate.h:20:
In file included from /usr/local/include/tg_owt/rtc_base/checks.h:57:
/usr/local/include/tg_owt/third_party/abseil-cpp/absl/meta/type_traits.h:630:35:
error: no type named 'result_of' in namespace 'std'
using result_of_t = typename std::result_of<T>::type;
                    ~~~~~~~~~~~~~~^~~~~~~~~
/usr/local/include/tg_owt/third_party/abseil-cpp/absl/meta/type_traits.h:630:44:
error: expected ';' after alias declaration
using result_of_t = typename std::result_of<T>::type;
                                           ^
2 errors generated.
------------------------

------------------------
FAILED:
Telegram/lib_base/CMakeFiles/lib_base_crash_report_writer.dir/cmake_pch.hxx.pch 
/usr/bin/c++ -DDESKTOP_APP_DISABLE_CRASH_REPORTS
-DDESKTOP_APP_DISABLE_WAYLAND_INTEGRATION -DDESKTOP_APP_USE_PACKAGED
-DQT_CORE_LIB -DQT_DBUS_LIB -DQT_GUI_LIB -DQT_IMPLICIT_QCHAR_CONSTRUCTION
-DQT_NETWORK_LIB -DQT_NO_CAST_FROM_BYTEARRAY -DQT_NO_DEBUG -DQT_NO_KEYWORDS
-DQT_SVG_LIB -DQT_WIDGETS_LIB -D_FORTIFY_SOURCE=2
-I/wrkdirs/usr/ports/net-im/telegram-desktop/work/tdesktop-3.2.5-full/Telegram/lib_base
-I/wrkdirs/usr/ports/net-im/telegram-desktop/work/tdesktop-3.2.5-full/Telegram/lib_rpl
-I/wrkdirs/usr/ports/net-im/telegram-desktop/work/tdesktop-3.2.5-full/Telegram/lib_crl
-isystem /usr/local/include -isystem /usr/local/include/qt5/QtCore/5.15.2
-isystem /usr/local/include/qt5/QtCore/5.15.2/QtCore -isystem
/usr/local/include/qt5/QtGui/5.15.2 -isystem
/usr/local/include/qt5/QtGui/5.15.2/QtGui -isystem /usr/local/include/qt5
-isystem /usr/local/include/qt5/QtCore -isystem
/usr/local/lib/qt5/mkspecs/freebsd-clang -isystem /usr/local/include/qt5/QtGui
-isystem /usr/local/include/qt5/QtWidgets -isystem
/usr/local/include/qt5/QtNetwork -isystem /usr/local/include/qt5/QtSvg -isystem
/usr/local/include/qt5/QtDBus -isystem /usr/local/include/giomm-2.4 -isystem
/usr/local/lib/giomm-2.4/include -isystem /usr/local/include/glib-2.0 -isystem
/usr/local/lib/glib-2.0/include -isystem /usr/local/include/glibmm-2.4 -isystem
/usr/local/lib/glibmm-2.4/include -isystem /usr/local/include/sigc++-2.0
-isystem /usr/local/lib/sigc++-2.0/include -isystem
/usr/local/include/gio-unix-2.0 -O2 -pipe -march=nehalem
-fstack-protector-strong -fno-strict-aliasing  -DNDEBUG -O2 -pipe
-march=nehalem -fstack-protector-strong -fno-strict-aliasing  -DNDEBUG
-fstack-protector-all -fstack-clash-protection -fPIC -fno-strict-aliasing -pipe
-Wall -W -Wno-unused-parameter -Wno-switch -Wno-missing-field-initializers
-Wno-sign-compare -pthread -std=gnu++20 -Winvalid-pch
-fpch-instantiate-templates -Xclang -emit-pch -Xclang -include -Xclang
/wrkdirs/usr/ports/net-im/telegram-desktop/work/.build/Telegram/lib_base/CMakeFiles/lib_base_crash_report_writer.dir/cmake_pch.hxx
-x c++-header -MD -MT
Telegram/lib_base/CMakeFiles/lib_base_crash_report_writer.dir/cmake_pch.hxx.pch
-MF
Telegram/lib_base/CMakeFiles/lib_base_crash_report_writer.dir/cmake_pch.hxx.pch.d
-o
Telegram/lib_base/CMakeFiles/lib_base_crash_report_writer.dir/cmake_pch.hxx.pch
-c
/wrkdirs/usr/ports/net-im/telegram-desktop/work/.build/Telegram/lib_base/CMakeFiles/lib_base_crash_report_writer.dir/cmake_pch.hxx.cxx
In file included from <built-in>:1:
In file included from
/wrkdirs/usr/ports/net-im/telegram-desktop/work/.build/Telegram/lib_base/CMakeFiles/lib_base_crash_report_writer.dir/cmake_pch.hxx:5:
In file included from
/wrkdirs/usr/ports/net-im/telegram-desktop/work/tdesktop-3.2.5-full/Telegram/lib_base/base/base_pch.h:23:
In file included from /usr/local/include/range/v3/all.hpp:17:
In file included from /usr/local/include/range/v3/action.hpp:17:
In file included from /usr/local/include/range/v3/action/action.hpp:23:
In file included from /usr/local/include/range/v3/action/concepts.hpp:23:
In file included from /usr/local/include/range/v3/range/concepts.hpp:37:
In file included from /usr/local/include/range/v3/iterator/concepts.hpp:30:
In file included from /usr/local/include/range/v3/iterator/access.hpp:22:
/usr/local/include/std/detail/associated_types.hpp:270:60: error: too many
template arguments for class template '__iterator_traits'
            &is_std_iterator_traits_specialized_impl_(std::__iterator_traits<I,
B> *))[2];
                                                           ^                   
~~
/usr/include/c++/v1/__iterator/iterator_traits.h:326:8: note: template is
declared here
struct __iterator_traits {};
       ^
1 error generated.
------------------------

-- 
You are receiving this mail because:
You are the assignee for the bug.