diff --git a/repos/base/lib/symbols/ld b/repos/base/lib/symbols/ld index 3045198bae..6d73431493 100644 --- a/repos/base/lib/symbols/ld +++ b/repos/base/lib/symbols/ld @@ -456,7 +456,9 @@ wait_for_continue T _Unwind_Complete T _Unwind_DeleteException T _Unwind_Resume T +_ZN10__cxxabiv120__si_class_type_infoD2Ev T _ZNK10__cxxabiv117__class_type_info10__do_catchEPKSt9type_infoPPvj T +_ZNK10__cxxabiv117__class_type_info11__do_upcastEPKS0_PPv T _ZNK10__cxxabiv120__si_class_type_info11__do_upcastEPKNS_17__class_type_infoEPKvRNS1_15__upcast_resultE T _ZNK10__cxxabiv120__si_class_type_info12__do_dyncastElNS_17__class_type_info10__sub_kindEPKS1_PKvS4_S6_RNS1_16__dyncast_resultE T _ZNK10__cxxabiv120__si_class_type_info20__do_find_public_srcElPKvPKNS_17__class_type_infoES2_ T @@ -465,6 +467,8 @@ _ZNKSt9exception4whatEv T _ZNSt13bad_exceptionD0Ev T _ZNSt13bad_exceptionD1Ev T _ZNSt13bad_exceptionD2Ev T +_ZNSt15__exception_ptr13exception_ptrC1Ev T +_ZNSt15__exception_ptr13exception_ptrD1Ev T _ZNSt9exceptionD0Ev T _ZNSt9exceptionD1Ev T _ZNSt9exceptionD2Ev T @@ -580,6 +584,7 @@ _ZTIl D 32 _ZTIm D 32 _ZTIs D 32 _ZTIt D 32 +_ZTIv D 32 _ZTIx D 32 _ZTIy D 32 _ZTSN10__cxxabiv115__forced_unwindE R 32 diff --git a/repos/libports/include/stdcxx/bits/c++config.h b/repos/libports/include/stdcxx/bits/c++config.h index e2ca0a25fe..defe3d6093 100644 --- a/repos/libports/include/stdcxx/bits/c++config.h +++ b/repos/libports/include/stdcxx/bits/c++config.h @@ -1440,7 +1440,7 @@ namespace std #define _GLIBCXX_FULLY_DYNAMIC_STRING 0 /* Define if gthreads library is available. */ -/* #undef _GLIBCXX_HAS_GTHREADS */ +#define _GLIBCXX_HAS_GTHREADS 1 /* Define to 1 if a full hosted library is built, or 0 if freestanding. */ #define _GLIBCXX_HOSTED 1 diff --git a/repos/libports/lib/symbols/libc b/repos/libports/lib/symbols/libc index 99e872d8d1..8a731c5eb6 100644 --- a/repos/libports/lib/symbols/libc +++ b/repos/libports/lib/symbols/libc @@ -1077,7 +1077,9 @@ _ZTIN4Libc6PluginE D 40 _Unwind_Complete T _Unwind_DeleteException T _Unwind_Resume T +_ZN10__cxxabiv120__si_class_type_infoD2Ev T _ZNK10__cxxabiv117__class_type_info10__do_catchEPKSt9type_infoPPvj T +_ZNK10__cxxabiv117__class_type_info11__do_upcastEPKS0_PPv T _ZNK10__cxxabiv120__si_class_type_info11__do_upcastEPKNS_17__class_type_infoEPKvRNS1_15__upcast_resultE T _ZNK10__cxxabiv120__si_class_type_info12__do_dyncastElNS_17__class_type_info10__sub_kindEPKS1_PKvS4_S6_RNS1_16__dyncast_resultE T _ZNK10__cxxabiv120__si_class_type_info20__do_find_public_srcElPKvPKNS_17__class_type_infoES2_ T @@ -1086,6 +1088,8 @@ _ZNKSt9exception4whatEv T _ZNSt13bad_exceptionD0Ev T _ZNSt13bad_exceptionD1Ev T _ZNSt13bad_exceptionD2Ev T +_ZNSt15__exception_ptr13exception_ptrC1Ev T +_ZNSt15__exception_ptr13exception_ptrD1Ev T _ZNSt9exceptionD0Ev T _ZNSt9exceptionD1Ev T _ZNSt9exceptionD2Ev T @@ -1201,6 +1205,7 @@ _ZTIl D 32 _ZTIm D 32 _ZTIs D 32 _ZTIt D 32 +_ZTIv D 32 _ZTIx D 32 _ZTIy D 32 _ZTSN10__cxxabiv115__forced_unwindE R 32 diff --git a/repos/libports/lib/symbols/stdcxx b/repos/libports/lib/symbols/stdcxx index 01eb39814d..b82c299ac8 100644 --- a/repos/libports/lib/symbols/stdcxx +++ b/repos/libports/lib/symbols/stdcxx @@ -154,6 +154,12 @@ _ZNKSt9type_info10__do_catchEPKS_PPvj T _ZNKSt9type_info11__do_upcastEPKN10__cxxabiv117__class_type_infoEPPv T _ZNKSt9type_info14__is_pointer_pEv T _ZNKSt9type_info15__is_function_pEv T +_ZNSt10_Sp_lockerC1EPKv T +_ZNSt10_Sp_lockerC1EPKvS1_ T +_ZNSt10_Sp_lockerC2EPKv T +_ZNSt10_Sp_lockerC2EPKvS1_ T +_ZNSt10_Sp_lockerD1Ev T +_ZNSt10_Sp_lockerD2Ev T _ZNSt10__num_base11_S_atoms_inE D 8 _ZNSt10__num_base12_S_atoms_outE D 8 _ZNSt10__num_base15_S_format_floatERKSt8ios_basePcc T @@ -201,6 +207,8 @@ _ZNSt11regex_errorC2ENSt15regex_constants10error_typeE T _ZNSt11regex_errorD0Ev T _ZNSt11regex_errorD1Ev T _ZNSt11regex_errorD2Ev T +_ZNSt11this_thread11__sleep_forENSt6chrono8durationIlSt5ratioILl1ELl1EEEENS1_IlS2_ILl1ELl1000000000EEEE T +_ZNSt11this_thread11__sleep_forENSt6chrono8durationIxSt5ratioILx1ELx1EEEENS1_IxS2_ILx1ELx1000000000EEEE T _ZNSt12__cow_stringC1EOS_ T _ZNSt12__cow_stringC1EPKcm T _ZNSt12__cow_stringC1ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE T @@ -298,6 +306,13 @@ _ZNSt12placeholders3_29E R 1 _ZNSt12system_errorD0Ev T _ZNSt12system_errorD1Ev T _ZNSt12system_errorD2Ev T +_ZNSt13__future_base12_Result_baseC1Ev T +_ZNSt13__future_base12_Result_baseC2Ev T +_ZNSt13__future_base12_Result_baseD0Ev T +_ZNSt13__future_base12_Result_baseD1Ev T +_ZNSt13__future_base12_Result_baseD2Ev T +_ZNSt13__future_base13_State_baseV211_Make_ready6_M_setEv T +_ZNSt13__future_base13_State_baseV211_Make_ready6_S_runEPv T _ZNSt13random_device14_M_init_pretr1ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE T _ZNSt13random_device14_M_init_pretr1ERKSs T _ZNSt13random_device16_M_getval_pretr1Ev T @@ -355,6 +370,13 @@ _ZNSt16invalid_argumentD2Ev T _ZNSt17bad_function_callD0Ev T _ZNSt17bad_function_callD1Ev T _ZNSt17bad_function_callD2Ev T +_ZNSt18condition_variable10notify_allEv T +_ZNSt18condition_variable10notify_oneEv T +_ZNSt18condition_variable4waitERSt11unique_lockISt5mutexE T +_ZNSt18condition_variableC1Ev T +_ZNSt18condition_variableC2Ev T +_ZNSt18condition_variableD1Ev T +_ZNSt18condition_variableD2Ev T _ZNSt19__iosfail_type_infoD0Ev T _ZNSt19__iosfail_type_infoD1Ev T _ZNSt19__iosfail_type_infoD2Ev T @@ -384,6 +406,10 @@ _ZNSt21__numeric_limits_base8is_exactE R 1 _ZNSt21__numeric_limits_base9is_iec559E R 1 _ZNSt21__numeric_limits_base9is_moduloE R 1 _ZNSt21__numeric_limits_base9is_signedE R 1 +_ZNSt22condition_variable_anyC1Ev T +_ZNSt22condition_variable_anyC2Ev T +_ZNSt22condition_variable_anyD1Ev T +_ZNSt22condition_variable_anyD2Ev T _ZNSt3_V214error_categoryD0Ev T _ZNSt3_V214error_categoryD1Ev T _ZNSt3_V214error_categoryD2Ev T @@ -445,11 +471,13 @@ _ZNSt6locale5facet18_S_create_c_localeERPiPKcS1_ T _ZNSt6locale5facet18_S_initialize_onceEv T _ZNSt6locale5facet19_S_destroy_c_localeERPi T _ZNSt6locale5facet20_S_lc_ctype_c_localeEPiPKc T +_ZNSt6locale5facet7_S_onceE B 16 _ZNSt6locale5facet9_S_c_nameE R 2 _ZNSt6locale5facetD0Ev T _ZNSt6locale5facetD1Ev T _ZNSt6locale5facetD2Ev T _ZNSt6locale6globalERKS_ T +_ZNSt6locale7_S_onceE B 16 _ZNSt6locale7classicEv T _ZNSt6locale7collateE R 4 _ZNSt6locale7numericE R 4 @@ -471,6 +499,15 @@ _ZNSt6localeC2Ev T _ZNSt6localeD1Ev T _ZNSt6localeD2Ev T _ZNSt6localeaSERKS_ T +_ZNSt6thread15_M_start_threadESt10shared_ptrINS_10_Impl_baseEE T +_ZNSt6thread15_M_start_threadESt10shared_ptrINS_10_Impl_baseEEPFvvE T +_ZNSt6thread15_M_start_threadESt10unique_ptrINS_6_StateESt14default_deleteIS1_EEPFvvE T +_ZNSt6thread20hardware_concurrencyEv T +_ZNSt6thread4joinEv T +_ZNSt6thread6_StateD0Ev T +_ZNSt6thread6_StateD1Ev T +_ZNSt6thread6_StateD2Ev T +_ZNSt6thread6detachEv T _ZNSt8__detail12__prime_listE R 2440 _ZNSt8__detail15_List_node_base10_M_reverseEv T _ZNSt8__detail15_List_node_base11_M_transferEPS0_S1_ T @@ -558,10 +595,13 @@ _ZNSt9type_infoD0Ev T _ZNSt9type_infoD1Ev T _ZNSt9type_infoD2Ev T _ZSt11_Hash_bytesPKvmm T +_ZSt14__once_functor B 32 _ZSt15_Fnv_hash_bytesPKvmm T _ZSt15future_categoryv T _ZSt15get_new_handlerv T _ZSt15set_new_handlerPFvvE T +_ZSt16__at_thread_exitPSt20__at_thread_exit_elt T +_ZSt16__get_once_mutexv T _ZSt16__throw_bad_castv T _ZSt17__gslice_to_indexmRKSt8valarrayImES2_RS0_ T _ZSt17__throw_bad_allocv T @@ -591,11 +631,14 @@ _ZSt21__throw_runtime_errorPKc T _ZSt22__throw_overflow_errorPKc T _ZSt22__verify_grouping_implPKcmS0_m T _ZSt23__construct_ios_failurePvPKc T +_ZSt23__get_once_functor_lockv T _ZSt23__throw_underflow_errorPKc T _ZSt24__is_ios_failure_handlerPKN10__cxxabiv117__class_type_infoE T _ZSt24__throw_invalid_argumentPKc T _ZSt24__throw_out_of_range_fmtPKcz T _ZSt25__throw_bad_function_callv T +_ZSt25notify_all_at_thread_exitRSt18condition_variableSt11unique_lockISt5mutexE T +_ZSt27__set_once_functor_lock_ptrPSt11unique_lockISt5mutexE T _ZSt28_Rb_tree_rebalance_for_erasePSt18_Rb_tree_node_baseRS_ T _ZSt29_Rb_tree_insert_and_rebalancebPSt18_Rb_tree_node_baseS0_RS_ T _ZSt3cin B 280 @@ -621,6 +664,7 @@ __cxa_bad_cast T __cxa_bad_typeid T __cxa_throw_bad_array_length T __cxa_throw_bad_array_new_length T +__once_proxy T # manually added typeinfo, vtable and VTT symbols diff --git a/repos/libports/ports/stdcxx.hash b/repos/libports/ports/stdcxx.hash index 3cd54cd681..036b5832e4 100644 --- a/repos/libports/ports/stdcxx.hash +++ b/repos/libports/ports/stdcxx.hash @@ -1 +1 @@ -79ad8821269a443aab21bfc1d0e9b8913332b6d1 +722e94328662e3050bb3d66801eb61d83d554d0e diff --git a/repos/libports/ports/stdcxx.port b/repos/libports/ports/stdcxx.port index 846b950ed6..aa8580a477 100644 --- a/repos/libports/ports/stdcxx.port +++ b/repos/libports/ports/stdcxx.port @@ -9,7 +9,8 @@ SIG(gcc) := ${URL(gcc)} KEY(gcc) := GNU TAR_OPT(gcc) := gcc-$(VERSION)/libstdc++-v3 \ - gcc-$(VERSION)/libgcc/gthr-single.h \ + gcc-$(VERSION)/libgcc/gthr.h \ + gcc-$(VERSION)/libgcc/gthr-posix.h \ --strip-components=2 PATCHES := src/lib/stdcxx/*.patch @@ -46,7 +47,8 @@ DIR_CONTENT(include/stdcxx/bits) := \ src/lib/stdcxx/config/os/generic/error_constants.h \ src/lib/stdcxx/config/os/generic/os_defines.h \ src/lib/stdcxx/config/locale/generic/messages_members.h \ - src/lib/stdcxx/config/locale/generic/time_members.h + src/lib/stdcxx/config/locale/generic/time_members.h \ + src/lib/stdcxx/gthr.h DIRS += include/stdcxx/config DIR_CONTENT(include/stdcxx/config) := \ @@ -62,7 +64,7 @@ symlinks: $(DOWNLOADS) ln -s ../../config/allocator/new_allocator_base.h src/lib/stdcxx/include/bits/c++allocator.h ln -s ../../config/io/c_io_stdio.h src/lib/stdcxx/include/bits/c++io.h ln -s ../../config/locale/generic/c_locale.h src/lib/stdcxx/include/bits/c++locale.h - ln -s ../../gthr-single.h src/lib/stdcxx/include/bits/gthr.h + ln -s ../../gthr-posix.h src/lib/stdcxx/include/bits/gthr-default.h ln -s atomicity_builtins/atomicity.h src/lib/stdcxx/config/cpu/generic/atomicity.cc ln -s collate_members.cc src/lib/stdcxx/config/locale/generic/collate_members_cow.cc ln -s messages_members.cc src/lib/stdcxx/config/locale/generic/messages_members_cow.cc