Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 898956 - media-video/aegisub-9999 fails to build with dev-libs/boost-1.81.0-r1
Summary: media-video/aegisub-9999 fails to build with dev-libs/boost-1.81.0-r1
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Nick Sarnie
URL: https://github.com/Aegisub/Aegisub/is...
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2023-03-02 19:03 UTC by Conrad
Modified: 2023-03-02 23:22 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments
build.log (build.log,30.92 KB, text/x-log)
2023-03-02 19:03 UTC, Conrad
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Conrad 2023-03-02 19:03:39 UTC
Created attachment 855872 [details]
build.log

After updating dev-libs/boost from 1.79.0 to 1.81.0-r1, media-video/aegisub-9999 fails to build with

In file included from /usr/include/boost/filesystem/path.hpp:21,                                                                                                                                                                                                                                                            
                 from /var/tmp/portage/media-video/aegisub-9999/work/aegisub-9999/src/agi_pre.h:100:                                                                                                                                                                                                                        
/usr/include/boost/filesystem/detail/path_traits.hpp: In instantiation of ‘constexpr const bool boost::filesystem::detail::path_traits::is_convertible_to_path_source<wxCStrData>::value’:                                                                                                                                  
/usr/include/boost/type_traits/conjunction.hpp:31:27:   required from ‘struct boost::conjunction<boost::disjunction<boost::filesystem::detail::path_traits::is_path_source<wxCStrData>, boost::filesystem::detail::path_traits::is_convertible_to_path_source<wxCStrData> >, boost::negation<boost::filesystem::detail::path
_traits::is_native_path_source<wxCStrData> > >’                                                                                                                                                                                                                                                                             
/usr/include/boost/filesystem/path.hpp:256:9:   required by substitution of ‘template<class Source, class> boost::filesystem::path::path(const Source&) [with Source = wxCStrData; <template-parameter-1-2> = <missing>]’                                                                                                   
/var/tmp/portage/media-video/aegisub-9999/work/aegisub-9999/src/command/video.cpp:478:36:   required from here                                                                                                                                                                                                              
/usr/include/boost/filesystem/detail/path_traits.hpp:495:85: error: call of overloaded ‘_check_convertible_to_path_source(const wxCStrData&)’ is ambiguous                                                                                                                                                                  
  495 |         sizeof(is_convertible_to_path_source< T >::_check_convertible_to_path_source(boost::declval< T const& >())) == sizeof(yes_type);                                                                                                                                                                            
      |               ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                                                                                                                                                                                                 
/usr/include/boost/filesystem/detail/path_traits.hpp:480:21: note: candidate: ‘static boost::filesystem::detail::path_traits::yes_type boost::filesystem::detail::path_traits::is_convertible_to_path_source<T>::_check_convertible_to_path_source(const char*) [with T = wxCStrData; boost::filesystem::detail::path_traits
::yes_type = char]’                                                                                                                                                                                                                                                                                                         
  480 |     static yes_type _check_convertible_to_path_source(const char*);                                                                                                                                                                                                                                                 
      |                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                                                                                                                                                                                                                                                               
/usr/include/boost/filesystem/detail/path_traits.hpp:481:21: note: candidate: ‘static boost::filesystem::detail::path_traits::yes_type boost::filesystem::detail::path_traits::is_convertible_to_path_source<T>::_check_convertible_to_path_source(const wchar_t*) [with T = wxCStrData; boost::filesystem::detail::path_tra
its::yes_type = char]’                                                                                                                                                                                                                                                                                                      
  481 |     static yes_type _check_convertible_to_path_source(const wchar_t*);                                                                                                                                                                                                                                              
      |                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                                                                                                                                                                                                                                                               
/usr/include/boost/filesystem/detail/path_traits.hpp:492:20: note: candidate: ‘static boost::filesystem::detail::path_traits::no_type boost::filesystem::detail::path_traits::is_convertible_to_path_source<T>::_check_convertible_to_path_source(...) [with T = wxCStrData]’                                               
  492 |     static no_type _check_convertible_to_path_source(...);                                                                                                                                                                                                                                                          
      |                    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                                                                                                                                                                                                                                                                
/var/tmp/portage/media-video/aegisub-9999/work/aegisub-9999/src/command/video.cpp: In function ‘void {anonymous}::save_snapshot(agi::Context*, bool)’:                                                                                                                                                                      
/var/tmp/portage/media-video/aegisub-9999/work/aegisub-9999/src/command/video.cpp:478:57: error: no match for ‘operator=’ (operand types are ‘agi::fs::path’ {aka ‘boost::filesystem::path’} and ‘wxCStrData’)                                                                                                              
  478 |                         basepath = wxGetHomeDir().c_str();                                                                                                                                                                                                                                                          
      |                                                         ^                                                                                                                                                                                                                                                           
/usr/include/boost/filesystem/path.hpp:444:13: note: candidate: ‘template<class Source> typename boost::enable_if_c<boost::disjunction<boost::filesystem::detail::path_traits::is_path_source<typename boost::remove_cv<T>::type>, boost::filesystem::detail::path_traits::is_convertible_to_path_source<typename boost::rem
ove_cv<T>::type> >::value, boost::filesystem::path&>::type boost::filesystem::path::operator=(const Source&)’                                                                                                                                                                                                               
  444 |     >::type operator=(Source const& source)                                                                                                                                                                                                                                                                         
      |             ^~~~~~~~                                                                                                                                                                                                                                                                                                
/usr/include/boost/filesystem/path.hpp:444:13: note:   template argument deduction/substitution failed:                                                                                                                                                                                                                     
/usr/include/boost/filesystem/path.hpp:324:11: note: candidate: ‘boost::filesystem::path& boost::filesystem::path::operator=(boost::filesystem::path&&)’                                                                                                                                                                    
  324 |     path& operator=(path&& p) BOOST_NOEXCEPT                                                                                                                                                                                                                                                                        
      |           ^~~~~~~~                                                                                                                                                                                                                                                                                                  
/usr/include/boost/filesystem/path.hpp:324:28: note:   no known conversion for argument 1 from ‘wxCStrData’ to ‘boost::filesystem::path&&’                                                                                                                                                                                  
  324 |     path& operator=(path&& p) BOOST_NOEXCEPT                                                                                                                                                                                                                                                                        
      |                     ~~~~~~~^                                                                                                                                                                                                                                                                                        
/usr/include/boost/filesystem/path.hpp:346:11: note: candidate: ‘boost::filesystem::path& boost::filesystem::path::operator=(string_type&&)’                                                                                                                                                                                
  346 |     path& operator=(string_type&& p) BOOST_NOEXCEPT                                                                                                                                                                                                                                                                 
      |           ^~~~~~~~                                                                                                                                                                                                                                                                                                  
/usr/include/boost/filesystem/path.hpp:346:35: note:   no known conversion for argument 1 from ‘wxCStrData’ to ‘boost::filesystem::path::string_type&&’ {aka ‘std::__cxx11::basic_string<char>&&’}                                                                                                                          
  346 |     path& operator=(string_type&& p) BOOST_NOEXCEPT                                                                                                                                                                                                                                                                 
      |                     ~~~~~~~~~~~~~~^                                                                                                                                                                                                                                                                                 
/usr/include/boost/filesystem/path.hpp:1378:14: note: candidate: ‘boost::filesystem::path& boost::filesystem::path::operator=(const boost::filesystem::path&)’                                                                                                                                                              
 1378 | inline path& path::operator=(path const& p)                                                                                                                                                                                                                                                                         
      |              ^~~~                                                                                                                                                                                                                                                                                                   
/usr/include/boost/filesystem/path.hpp:1378:42: note:   no known conversion for argument 1 from ‘wxCStrData’ to ‘const boost::filesystem::path&’                                                                                                                                                                            
 1378 | inline path& path::operator=(path const& p)                                                                                                                                                                                                                                                                         
      |                              ~~~~~~~~~~~~^                                                                                                                                                                                                                                                                          
make: *** [Makefile.target:100: /var/tmp/portage/media-video/aegisub-9999/work/aegisub-9999/src/command/video.o] Error 1
Comment 1 Andreas Sturmlechner gentoo-dev 2023-03-02 19:07:50 UTC
Can you confirm that 3.2.2_p20160518-r105 builds fine?
Comment 2 Conrad 2023-03-02 19:17:57 UTC
Thanks for your response! 3.2.2_p20160518-r105 builds fine.
Comment 3 Andreas Sturmlechner gentoo-dev 2023-03-02 21:04:42 UTC
Is it time to just drop live ebuild of an unmaintained project?
Comment 4 Conrad 2023-03-02 21:31:23 UTC
The live ebuild is building https://github.com/wangqr/Aegisub which was last updated in November.
Comment 5 Nick Sarnie gentoo-dev 2023-03-02 23:19:47 UTC
The patch I added for the keyworded version works on 9999 too, I'll just use that here, but yeah I don't know why anyone would use 9999 for this package.
Comment 6 Larry the Git Cow gentoo-dev 2023-03-02 23:22:36 UTC
The bug has been closed via the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=6d18defb27b9ae171cb431338e2e15b7192bbcbb

commit 6d18defb27b9ae171cb431338e2e15b7192bbcbb
Author:     Nick Sarnie <sarnex@gentoo.org>
AuthorDate: 2023-03-02 23:21:17 +0000
Commit:     Nick Sarnie <sarnex@gentoo.org>
CommitDate: 2023-03-02 23:22:12 +0000

    media-video/aegisub: Fix 9999 build with boost 1.81
    
    Closes: https://bugs.gentoo.org/898956
    
    Signed-off-by: Nick Sarnie <sarnex@gentoo.org>

 media-video/aegisub/aegisub-9999.ebuild | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)