# Buildsheet autogenerated by ravenadm tool -- Do not edit. NAMEBASE= libcxx VERSION= 18.1.4 KEYWORDS= lang VARIANTS= standard SDESC[standard]= LLVM C++ standard library HOMEPAGE= https://libcxx.llvm.org/ CONTACT= nobody DOWNLOAD_GROUPS= main SITES[main]= https://github.com/llvm/llvm-project/releases/download/llvmorg-18.1.4/ DISTFILE[1]= libcxx-18.1.4.src.tar.xz:main DISTFILE[2]= libcxxabi-18.1.4.src.tar.xz:main DISTFILE[3]= cmake-18.1.4.src.tar.xz:main DISTFILE[4]= runtimes-18.1.4.src.tar.xz:main DF_INDEX= 1 2 3 4 SPKGS[standard]= complete primary dev abi experimental OPTIONS_AVAILABLE= none OPTIONS_STANDARD= none BUILD_DEPENDS= python-Sphinx:single:python_default clang:complete:standard llvm:dev:standard llvm:tools:standard llvm-libunwind:dev:standard BUILDRUN_DEPENDS= llvm-libunwind:primary:standard USES= cpe cmake cclibs:primary python:build DISTNAME= llvm LICENSE= CUSTOM1:primary CUSTOM2:abi LICENSE_NAME= CUSTOM1:"University of Illinois/NCSA Open Source License" CUSTOM2:"University of Illinois/NCSA Open Source License" LICENSE_FILE= CUSTOM1:{{WRKSRC}}/projects/libcxx/LICENSE.TXT CUSTOM2:{{WRKSRC}}/projects/libcxxabi/LICENSE.TXT LICENSE_SCHEME= multi CMAKE_BUILD_TYPE= Release CPE_PRODUCT= llvm CPE_VENDOR= llvm LDFLAGS= -L{{LOCALBASE}}/lib -Wl,-rpath,{{LOCALBASE}}/lib CMAKE_ARGS= -DLLVM_HOST_TRIPLE:STRING="{{CONFIGURE_TARGET}}" -DLLVM_ENABLE_SPHINX=ON -DLIBCXX_INCLUDE_BENCHMARKS:BOOL=OFF -DLLVM_ENABLE_RUNTIMES=libunwind -DPython3_EXECUTABLE={{PYTHON_CMD}} post-install: ${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/libc++.so.1.0 ${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/libc++abi.so.1.0 post-extract: ${MKDIR} ${WRKSRC}/projects ${MV} ${WRKDIR}/libcxx-18.1.4.src \ ${WRKSRC}/projects/libcxx ${MV} ${WRKDIR}/libcxxabi-18.1.4.src \ ${WRKSRC}/projects/libcxxabi ${SED} -e 's|%%VERSION%%|18.1.4|' ${FILESDIR}/CMakeLists.txt \ > ${WRKSRC}/CMakeLists.txt # install more cmake functions ${CP} ${WRKDIR}/cmake-18.1.4.src/Modules/* \ ${WRKSRC}/projects/libcxx/cmake/Modules/ ${CP} ${WRKDIR}/cmake-18.1.4.src/Modules/* \ ${WRKSRC}/projects/libcxxabi/cmake/Modules/ ${CP} ${WRKDIR}/runtimes-18.1.4.src/cmake/Modules/* \ ${WRKSRC}/projects/libcxx/cmake/Modules/ ${CP} ${WRKDIR}/runtimes-18.1.4.src/cmake/Modules/* \ ${WRKSRC}/projects/libcxxabi/cmake/Modules/ [FILE:382:descriptions/desc.primary] libc++ is a new implementation of the C++ standard library, targeting C++11, c++14, and c++17. Features and Goals * Correctness as defined by the C++11 standard. * Fast execution. * Minimal memory use. * Fast compile times. * ABI compatibility with gcc's libstdc++ for some low-level features such as exception objects, rtti and memory allocation. * Extensive unit tests. [FILE:284:descriptions/desc.abi] libc++abi is a new implementation of low level support for a standard C++ library. Features and Goals * Correctness as defined by the C++11 standard. * Provide a portable sublayer to ease the porting of libc++ * On Mac OS X, be ABI compatible with the existing low-level support. [FILE:43:descriptions/desc.experimental] LLVM project's libc++experimental library. [FILE:416:distinfo] 6d8c47671c5ad77b3c3f0dab16f31f289b4382bba644e0d62d9316b51e1cf1c9 4031032 libcxx-18.1.4.src.tar.xz 4f722b0260806d66f839207bfed18c18e5ab42aeca1d3311615beff68674d129 582676 libcxxabi-18.1.4.src.tar.xz 1acdd829b77f658ba4473757178f9960abcb6ac8d2c700b0772a952b3c9306ba 8708 cmake-18.1.4.src.tar.xz 557e5a292977628bb5683d67d7c81ed55e14b310d74c6ba53a516f64d5f61dd8 6788 runtimes-18.1.4.src.tar.xz [FILE:67:manifests/plist.primary] lib/ libc++.so.1 libc++.so.1.0 libc++abi.so.1 libc++abi.so.1.0 [FILE:17734:manifests/plist.dev] include/c++/v1/ __assert __assertion_handler __availability __bit_reference __config __config_site __hash_table __locale __mbstate_t.h __node_handle __split_buffer __std_clang_module __std_mbstate_t.h __threading_support __tree __undef_macros __verbose_abort algorithm any array atomic barrier bit bitset cassert ccomplex cctype cerrno cfenv cfloat charconv chrono cinttypes ciso646 climits clocale cmath codecvt compare complex complex.h concepts condition_variable coroutine csetjmp csignal cstdarg cstdbool cstddef cstdint cstdio cstdlib cstring ctgmath ctime ctype.h cuchar cwchar cwctype deque errno.h exception execution expected fenv.h filesystem float.h format forward_list fstream functional future initializer_list inttypes.h iomanip ios iosfwd iostream istream iterator latch libcxx.imp limits list locale locale.h map math.h mdspan memory memory_resource module.modulemap mutex new numbers numeric optional ostream print queue random ranges ratio regex scoped_allocator semaphore set shared_mutex source_location span sstream stack stdatomic.h stdbool.h stddef.h stdexcept stdint.h stdio.h stdlib.h stop_token streambuf string string.h string_view strstream syncstream system_error tgmath.h thread tuple type_traits typeindex typeinfo uchar.h unordered_map unordered_set utility valarray variant vector version wchar.h wctype.h include/c++/v1/__algorithm/ adjacent_find.h all_of.h any_of.h binary_search.h clamp.h comp.h comp_ref_type.h copy.h copy_backward.h copy_if.h copy_move_common.h copy_n.h count.h count_if.h equal.h equal_range.h fill.h fill_n.h find.h find_end.h find_first_of.h find_if.h find_if_not.h find_segment_if.h fold.h for_each.h for_each_n.h for_each_segment.h generate.h generate_n.h half_positive.h in_found_result.h in_fun_result.h in_in_out_result.h in_in_result.h in_out_out_result.h in_out_result.h includes.h inplace_merge.h is_heap.h is_heap_until.h is_partitioned.h is_permutation.h is_sorted.h is_sorted_until.h iter_swap.h iterator_operations.h lexicographical_compare.h lexicographical_compare_three_way.h lower_bound.h make_heap.h make_projected.h max.h max_element.h merge.h min.h min_element.h min_max_result.h minmax.h minmax_element.h mismatch.h move.h move_backward.h next_permutation.h none_of.h nth_element.h partial_sort.h partial_sort_copy.h partition.h partition_copy.h partition_point.h pop_heap.h prev_permutation.h pstl_any_all_none_of.h pstl_backend.h pstl_copy.h pstl_count.h pstl_equal.h pstl_fill.h pstl_find.h pstl_for_each.h pstl_frontend_dispatch.h pstl_generate.h pstl_is_partitioned.h pstl_merge.h pstl_move.h pstl_replace.h pstl_rotate_copy.h pstl_sort.h pstl_stable_sort.h pstl_transform.h push_heap.h ranges_adjacent_find.h ranges_all_of.h ranges_any_of.h ranges_binary_search.h ranges_clamp.h ranges_contains.h ranges_copy.h ranges_copy_backward.h ranges_copy_if.h ranges_copy_n.h ranges_count.h ranges_count_if.h ranges_ends_with.h ranges_equal.h ranges_equal_range.h ranges_fill.h ranges_fill_n.h ranges_find.h ranges_find_end.h ranges_find_first_of.h ranges_find_if.h ranges_find_if_not.h ranges_for_each.h ranges_for_each_n.h ranges_generate.h ranges_generate_n.h ranges_includes.h ranges_inplace_merge.h ranges_is_heap.h ranges_is_heap_until.h ranges_is_partitioned.h ranges_is_permutation.h ranges_is_sorted.h ranges_is_sorted_until.h ranges_iterator_concept.h ranges_lexicographical_compare.h ranges_lower_bound.h ranges_make_heap.h ranges_max.h ranges_max_element.h ranges_merge.h ranges_min.h ranges_min_element.h ranges_minmax.h ranges_minmax_element.h ranges_mismatch.h ranges_move.h ranges_move_backward.h ranges_next_permutation.h ranges_none_of.h ranges_nth_element.h ranges_partial_sort.h ranges_partial_sort_copy.h ranges_partition.h ranges_partition_copy.h ranges_partition_point.h ranges_pop_heap.h ranges_prev_permutation.h ranges_push_heap.h ranges_remove.h ranges_remove_copy.h ranges_remove_copy_if.h ranges_remove_if.h ranges_replace.h ranges_replace_copy.h ranges_replace_copy_if.h ranges_replace_if.h ranges_reverse.h ranges_reverse_copy.h ranges_rotate.h ranges_rotate_copy.h ranges_sample.h ranges_search.h ranges_search_n.h ranges_set_difference.h ranges_set_intersection.h ranges_set_symmetric_difference.h ranges_set_union.h ranges_shuffle.h ranges_sort.h ranges_sort_heap.h ranges_stable_partition.h ranges_stable_sort.h ranges_starts_with.h ranges_swap_ranges.h ranges_transform.h ranges_unique.h ranges_unique_copy.h ranges_upper_bound.h remove.h remove_copy.h remove_copy_if.h remove_if.h replace.h replace_copy.h replace_copy_if.h replace_if.h reverse.h reverse_copy.h rotate.h rotate_copy.h sample.h search.h search_n.h set_difference.h set_intersection.h set_symmetric_difference.h set_union.h shift_left.h shift_right.h shuffle.h sift_down.h sort.h sort_heap.h stable_partition.h stable_sort.h swap_ranges.h three_way_comp_ref_type.h transform.h uniform_random_bit_generator_adaptor.h unique.h unique_copy.h unwrap_iter.h unwrap_range.h upper_bound.h include/c++/v1/__algorithm/pstl_backends/cpu_backend.h include/c++/v1/__algorithm/pstl_backends/cpu_backends/ any_of.h backend.h fill.h find_if.h for_each.h libdispatch.h merge.h serial.h stable_sort.h thread.h transform.h transform_reduce.h include/c++/v1/__atomic/ aliases.h atomic.h atomic_base.h atomic_flag.h atomic_init.h atomic_lock_free.h atomic_sync.h check_memory_order.h contention_t.h cxx_atomic_impl.h fence.h is_always_lock_free.h kill_dependency.h memory_order.h include/c++/v1/__bit/ bit_cast.h bit_ceil.h bit_floor.h bit_log2.h bit_width.h blsr.h byteswap.h countl.h countr.h endian.h has_single_bit.h invert_if.h popcount.h rotate.h include/c++/v1/__charconv/ chars_format.h from_chars_integral.h from_chars_result.h tables.h to_chars.h to_chars_base_10.h to_chars_floating_point.h to_chars_integral.h to_chars_result.h traits.h include/c++/v1/__chrono/ calendar.h concepts.h convert_to_timespec.h convert_to_tm.h day.h duration.h file_clock.h formatter.h hh_mm_ss.h high_resolution_clock.h literals.h month.h month_weekday.h monthday.h ostream.h parser_std_format_spec.h statically_widen.h steady_clock.h system_clock.h time_point.h tzdb.h tzdb_list.h weekday.h year.h year_month.h year_month_day.h year_month_weekday.h include/c++/v1/__compare/ common_comparison_category.h compare_partial_order_fallback.h compare_strong_order_fallback.h compare_three_way.h compare_three_way_result.h compare_weak_order_fallback.h is_eq.h ordering.h partial_order.h strong_order.h synth_three_way.h three_way_comparable.h weak_order.h include/c++/v1/__concepts/ arithmetic.h assignable.h boolean_testable.h class_or_enum.h common_reference_with.h common_with.h constructible.h convertible_to.h copyable.h derived_from.h destructible.h different_from.h equality_comparable.h invocable.h movable.h predicate.h regular.h relation.h same_as.h semiregular.h swappable.h totally_ordered.h include/c++/v1/__condition_variable/condition_variable.h include/c++/v1/__coroutine/ coroutine_handle.h coroutine_traits.h noop_coroutine_handle.h trivial_awaitables.h include/c++/v1/__debug_utils/ randomize_range.h strict_weak_ordering_check.h include/c++/v1/__exception/ exception.h exception_ptr.h nested_exception.h operations.h terminate.h include/c++/v1/__expected/ bad_expected_access.h expected.h unexpect.h unexpected.h include/c++/v1/__filesystem/ copy_options.h directory_entry.h directory_iterator.h directory_options.h file_status.h file_time_type.h file_type.h filesystem_error.h operations.h path.h path_iterator.h perm_options.h perms.h recursive_directory_iterator.h space_info.h u8path.h include/c++/v1/__format/ buffer.h concepts.h container_adaptor.h enable_insertable.h escaped_output_table.h extended_grapheme_cluster_table.h format_arg.h format_arg_store.h format_args.h format_context.h format_error.h format_functions.h format_fwd.h format_parse_context.h format_string.h format_to_n_result.h formatter.h formatter_bool.h formatter_char.h formatter_floating_point.h formatter_integer.h formatter_integral.h formatter_output.h formatter_pointer.h formatter_string.h formatter_tuple.h parser_std_format_spec.h range_default_formatter.h range_formatter.h unicode.h width_estimation_table.h write_escaped.h include/c++/v1/__functional/ binary_function.h binary_negate.h bind.h bind_back.h bind_front.h binder1st.h binder2nd.h boyer_moore_searcher.h compose.h default_searcher.h function.h hash.h identity.h invoke.h is_transparent.h mem_fn.h mem_fun_ref.h not_fn.h operations.h perfect_forward.h pointer_to_binary_function.h pointer_to_unary_function.h ranges_operations.h reference_wrapper.h unary_function.h unary_negate.h weak_result_type.h include/c++/v1/__fwd/ array.h bit_reference.h fstream.h get.h hash.h ios.h istream.h mdspan.h memory_resource.h ostream.h pair.h span.h sstream.h streambuf.h string.h string_view.h subrange.h tuple.h include/c++/v1/__ios/fpos.h include/c++/v1/__iterator/ access.h advance.h back_insert_iterator.h bounded_iter.h common_iterator.h concepts.h counted_iterator.h cpp17_iterator_concepts.h data.h default_sentinel.h distance.h empty.h erase_if_container.h front_insert_iterator.h incrementable_traits.h indirectly_comparable.h insert_iterator.h istream_iterator.h istreambuf_iterator.h iter_move.h iter_swap.h iterator.h iterator_traits.h iterator_with_data.h mergeable.h move_iterator.h move_sentinel.h next.h ostream_iterator.h ostreambuf_iterator.h permutable.h prev.h projected.h ranges_iterator_traits.h readable_traits.h reverse_access.h reverse_iterator.h segmented_iterator.h size.h sortable.h unreachable_sentinel.h wrap_iter.h include/c++/v1/__locale_dir/locale_base_api/ bsd_locale_defaults.h bsd_locale_fallbacks.h locale_guard.h include/c++/v1/__math/ abs.h copysign.h error_functions.h exponential_functions.h fdim.h fma.h gamma.h hyperbolic_functions.h hypot.h inverse_hyperbolic_functions.h inverse_trigonometric_functions.h logarithms.h min_max.h modulo.h remainder.h roots.h rounding_functions.h traits.h trigonometric_functions.h include/c++/v1/__mdspan/ default_accessor.h extents.h layout_left.h layout_right.h layout_stride.h mdspan.h include/c++/v1/__memory/ addressof.h align.h aligned_alloc.h allocate_at_least.h allocation_guard.h allocator.h allocator_arg_t.h allocator_destructor.h allocator_traits.h assume_aligned.h auto_ptr.h builtin_new_allocator.h compressed_pair.h concepts.h construct_at.h destruct_n.h pointer_traits.h ranges_construct_at.h ranges_uninitialized_algorithms.h raw_storage_iterator.h shared_ptr.h swap_allocator.h temp_value.h temporary_buffer.h uninitialized_algorithms.h unique_ptr.h uses_allocator.h uses_allocator_construction.h voidify.h include/c++/v1/__memory_resource/ memory_resource.h monotonic_buffer_resource.h polymorphic_allocator.h pool_options.h synchronized_pool_resource.h unsynchronized_pool_resource.h include/c++/v1/__mutex/ lock_guard.h mutex.h once_flag.h tag_types.h unique_lock.h include/c++/v1/__numeric/ accumulate.h adjacent_difference.h exclusive_scan.h gcd_lcm.h inclusive_scan.h inner_product.h iota.h midpoint.h partial_sum.h pstl_reduce.h pstl_transform_reduce.h reduce.h saturation_arithmetic.h transform_exclusive_scan.h transform_inclusive_scan.h transform_reduce.h include/c++/v1/__random/ bernoulli_distribution.h binomial_distribution.h cauchy_distribution.h chi_squared_distribution.h clamp_to_integral.h default_random_engine.h discard_block_engine.h discrete_distribution.h exponential_distribution.h extreme_value_distribution.h fisher_f_distribution.h gamma_distribution.h generate_canonical.h geometric_distribution.h independent_bits_engine.h is_seed_sequence.h is_valid.h knuth_b.h linear_congruential_engine.h log2.h lognormal_distribution.h mersenne_twister_engine.h negative_binomial_distribution.h normal_distribution.h piecewise_constant_distribution.h piecewise_linear_distribution.h poisson_distribution.h random_device.h ranlux.h seed_seq.h shuffle_order_engine.h student_t_distribution.h subtract_with_carry_engine.h uniform_int_distribution.h uniform_random_bit_generator.h uniform_real_distribution.h weibull_distribution.h include/c++/v1/__ranges/ access.h all.h as_rvalue_view.h chunk_by_view.h common_view.h concepts.h container_compatible_range.h counted.h dangling.h data.h drop_view.h drop_while_view.h elements_view.h empty.h empty_view.h enable_borrowed_range.h enable_view.h filter_view.h from_range.h iota_view.h istream_view.h join_view.h lazy_split_view.h movable_box.h non_propagating_cache.h owning_view.h range_adaptor.h rbegin.h ref_view.h rend.h repeat_view.h reverse_view.h single_view.h size.h split_view.h subrange.h take_view.h take_while_view.h to.h transform_view.h view_interface.h views.h zip_view.h include/c++/v1/__stop_token/ atomic_unique_lock.h intrusive_list_view.h intrusive_shared_ptr.h stop_callback.h stop_source.h stop_state.h stop_token.h include/c++/v1/__string/ char_traits.h constexpr_c_functions.h extern_template_lists.h include/c++/v1/__support/android/locale_bionic.h include/c++/v1/__support/fuchsia/xlocale.h include/c++/v1/__support/ibm/ gettod_zos.h locale_mgmt_zos.h nanosleep.h xlocale.h include/c++/v1/__support/musl/xlocale.h include/c++/v1/__support/newlib/xlocale.h include/c++/v1/__support/openbsd/xlocale.h include/c++/v1/__support/win32/locale_win32.h include/c++/v1/__support/xlocale/ __nop_locale_mgmt.h __posix_l_fallback.h __strtonum_fallback.h include/c++/v1/__system_error/ errc.h error_category.h error_code.h error_condition.h system_error.h include/c++/v1/__thread/ formatter.h id.h jthread.h poll_with_backoff.h this_thread.h thread.h timed_backoff_policy.h include/c++/v1/__tuple/ make_tuple_types.h pair_like.h sfinae_helpers.h tuple_element.h tuple_indices.h tuple_like.h tuple_like_ext.h tuple_size.h tuple_types.h include/c++/v1/__type_traits/ add_const.h add_cv.h add_lvalue_reference.h add_pointer.h add_rvalue_reference.h add_volatile.h aligned_storage.h aligned_union.h alignment_of.h apply_cv.h can_extract_key.h common_reference.h common_type.h conditional.h conjunction.h copy_cv.h copy_cvref.h datasizeof.h decay.h dependent_type.h disjunction.h enable_if.h extent.h has_unique_object_representation.h has_virtual_destructor.h integral_constant.h invoke.h is_abstract.h is_aggregate.h is_allocator.h is_always_bitcastable.h is_arithmetic.h is_array.h is_assignable.h is_base_of.h is_bounded_array.h is_callable.h is_char_like_type.h is_class.h is_compound.h is_const.h is_constant_evaluated.h is_constructible.h is_convertible.h is_copy_assignable.h is_copy_constructible.h is_core_convertible.h is_default_constructible.h is_destructible.h is_empty.h is_enum.h is_equality_comparable.h is_execution_policy.h is_final.h is_floating_point.h is_function.h is_fundamental.h is_implicitly_default_constructible.h is_integral.h is_literal_type.h is_member_function_pointer.h is_member_object_pointer.h is_member_pointer.h is_move_assignable.h is_move_constructible.h is_nothrow_assignable.h is_nothrow_constructible.h is_nothrow_convertible.h is_nothrow_copy_assignable.h is_nothrow_copy_constructible.h is_nothrow_default_constructible.h is_nothrow_destructible.h is_nothrow_move_assignable.h is_nothrow_move_constructible.h is_null_pointer.h is_object.h is_pod.h is_pointer.h is_polymorphic.h is_primary_template.h is_reference.h is_reference_wrapper.h is_referenceable.h is_same.h is_scalar.h is_scoped_enum.h is_signed.h is_signed_integer.h is_specialization.h is_standard_layout.h is_swappable.h is_trivial.h is_trivially_assignable.h is_trivially_constructible.h is_trivially_copy_assignable.h is_trivially_copy_constructible.h is_trivially_copyable.h is_trivially_default_constructible.h is_trivially_destructible.h is_trivially_lexicographically_comparable.h is_trivially_move_assignable.h is_trivially_move_constructible.h is_unbounded_array.h is_union.h is_unsigned.h is_unsigned_integer.h is_valid_expansion.h is_void.h is_volatile.h lazy.h make_32_64_or_128_bit.h make_const_lvalue_ref.h make_signed.h make_unsigned.h maybe_const.h nat.h negation.h noexcept_move_assign_container.h operation_traits.h promote.h rank.h remove_all_extents.h remove_const.h remove_const_ref.h remove_cv.h remove_cvref.h remove_extent.h remove_pointer.h remove_reference.h remove_volatile.h result_of.h strip_signature.h type_identity.h type_list.h underlying_type.h unwrap_ref.h void_t.h include/c++/v1/__utility/ as_const.h as_lvalue.h auto_cast.h cmp.h convert_to_integral.h declval.h empty.h exception_guard.h exchange.h forward.h forward_like.h in_place.h integer_sequence.h is_pointer_in_range.h move.h no_destroy.h pair.h piecewise_construct.h priority_tag.h rel_ops.h small_buffer.h swap.h to_underlying.h unreachable.h include/c++/v1/__variant/monostate.h include/c++/v1/ext/ __hash hash_map hash_set lib/ libc++.a libc++.so libc++abi.a libc++abi.so [FILE:45:manifests/plist.abi] include/c++/v1/ __cxxabi_config.h cxxabi.h [FILE:279:manifests/plist.experimental] include/c++/v1/experimental/ __config __memory iterator memory propagate_const simd type_traits utility include/c++/v1/experimental/__simd/ aligned_tag.h declaration.h reference.h scalar.h simd.h simd_mask.h traits.h utility.h vec_ext.h lib/libc++experimental.a [FILE:458:patches/patch-projects_libcxx_CMakeLists.txt] --- projects/libcxx/CMakeLists.txt.orig 2024-04-17 00:21:15 UTC +++ projects/libcxx/CMakeLists.txt @@ -229,8 +229,6 @@ option(LIBCXX_USE_COMPILER_RT "Use compi # ABI Library options --------------------------------------------------------- if (MSVC) set(LIBCXX_DEFAULT_ABI_LIBRARY "vcruntime") -elseif (${CMAKE_SYSTEM_NAME} MATCHES "FreeBSD") - set(LIBCXX_DEFAULT_ABI_LIBRARY "libcxxrt") else() set(LIBCXX_DEFAULT_ABI_LIBRARY "libcxxabi") endif() [FILE:2007:patches/patch-projects_libcxx_include_____config] --- projects/libcxx/include/__config.orig 2024-04-17 00:21:15 UTC +++ projects/libcxx/include/__config @@ -12,6 +12,10 @@ #include <__config_site> +#if defined(__FreeBSD__) || defined(__DragonFly__) +#define __FreeDragon__ +#endif + #ifndef _LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER # pragma GCC system_header #endif @@ -188,7 +192,7 @@ # endif // Feature macros for disabling pre ABI v1 features. All of these options // are deprecated. -# if defined(__FreeBSD__) && __FreeBSD__ < 14 +# if (defined(__FreeBSD__) && __FreeBSD__ < 14) || defined(__DragonFly__) # define _LIBCPP_DEPRECATED_ABI_DISABLE_PAIR_TRIVIAL_COPY_CTOR # endif // For XCOFF linkers, we have problems if we see a weak hidden version of a symbol @@ -953,11 +957,11 @@ typedef __char32_t char32_t; # define _LIBCPP_HAS_NO_C11_ALIGNED_ALLOC # endif -# if defined(__APPLE__) || defined(__FreeBSD__) +# if defined(__APPLE__) || defined(__FreeDragon__) # define _LIBCPP_HAS_DEFAULTRUNELOCALE # endif -# if defined(__APPLE__) || defined(__FreeBSD__) +# if defined(__APPLE__) || defined(__FreeDragon__) # define _LIBCPP_WCTYPE_IS_MASK # endif @@ -1093,7 +1097,7 @@ __sanitizer_verify_double_ended_contiguo !defined(_LIBCPP_HAS_THREAD_API_WIN32) && \ !defined(_LIBCPP_HAS_THREAD_API_EXTERNAL) -# if defined(__FreeBSD__) || \ +# if defined(__FreeDragon__) || \ defined(__wasi__) || \ defined(__NetBSD__) || \ defined(__OpenBSD__) || \ [FILE:1079:patches/patch-projects_libcxx_include_____locale] --- projects/libcxx/include/__locale.orig 2024-04-17 00:21:15 UTC +++ projects/libcxx/include/__locale @@ -42,7 +42,7 @@ # include <__support/newlib/xlocale.h> #elif defined(__OpenBSD__) # include <__support/openbsd/xlocale.h> -#elif (defined(__APPLE__) || defined(__FreeBSD__)) +#elif (defined(__APPLE__) || defined(__FreeDragon__)) # include #elif defined(__Fuchsia__) # include <__support/fuchsia/xlocale.h> @@ -364,10 +364,10 @@ public: static const mask __regex_word = 0x4000; // 0x8000 and 0x0100 and 0x00ff are used # define _LIBCPP_CTYPE_MASK_IS_COMPOSITE_PRINT # define _LIBCPP_CTYPE_MASK_IS_COMPOSITE_ALPHA -#elif defined(__APPLE__) || defined(__FreeBSD__) || defined(__EMSCRIPTEN__) || defined(__NetBSD__) +#elif defined(__APPLE__) || defined(__FreeDragon__) || defined(__EMSCRIPTEN__) || defined(__NetBSD__) # ifdef __APPLE__ typedef __uint32_t mask; -# elif defined(__FreeBSD__) +# elif defined(__FreeDragon__) typedef unsigned long mask; # elif defined(__EMSCRIPTEN__) || defined(__NetBSD__) typedef unsigned short mask; [FILE:376:patches/patch-projects_libcxx_include_locale] --- projects/libcxx/include/locale.orig 2024-04-17 00:21:15 UTC +++ projects/libcxx/include/locale @@ -238,7 +238,7 @@ _LIBCPP_PUSH_MACROS _LIBCPP_BEGIN_NAMESPACE_STD -#if defined(__APPLE__) || defined(__FreeBSD__) +#if defined(__APPLE__) || defined(__FreeDragon__) # define _LIBCPP_GET_C_LOCALE 0 #elif defined(__NetBSD__) # define _LIBCPP_GET_C_LOCALE LC_C_LOCALE [FILE:461:patches/patch-projects_libcxx_src_locale.cpp] --- projects/libcxx/src/locale.cpp.orig 2024-04-17 00:21:15 UTC +++ projects/libcxx/src/locale.cpp @@ -979,7 +979,7 @@ const ctype::mask* ctype::cl } #else const ctype::mask* ctype::classic_table() noexcept { -# if defined(__APPLE__) || defined(__FreeBSD__) +# if defined(__APPLE__) || defined(__FreeBSD__) || defined(__DragonFly__) return _DefaultRuneLocale.__runetype; # elif defined(__NetBSD__) return _C_ctype_tab_ + 1; [FILE:620:patches/patch-projects_libcxxabi_src_CMakeLists.txt] --- projects/libcxxabi/src/CMakeLists.txt.orig 2024-04-17 00:21:15 UTC +++ projects/libcxxabi/src/CMakeLists.txt @@ -163,7 +163,7 @@ if (LIBCXXABI_USE_LLVM_UNWINDER) target_link_libraries(cxxabi_shared_objects PUBLIC unwind_shared_objects) # propagate usage requirements target_sources(cxxabi_shared_objects PUBLIC $) else() - target_link_libraries(cxxabi_shared_objects PUBLIC unwind_shared) + target_link_libraries(cxxabi_shared_objects PUBLIC unwind) endif() endif() target_link_libraries(cxxabi_shared_objects PRIVATE cxx-headers ${LIBCXXABI_LIBRARIES}) [FILE:476:files/CMakeLists.txt] cmake_minimum_required(VERSION 3.4.3) set(LLVM_MAIN_SRC_DIR ${CMAKE_CURRENT_SOURCE_DIR}) set(PACKAGE_VERSION "%%VERSION%%") set(LIBCXX_CXX_ABI "libcxxabi") set(PRJDIR "${LLVM_MAIN_SRC_DIR}/projects") set(LLVM_EXTERNAL_LIBCXX_SOURCE_DIR "${PRJDIR}/libcxx") set(LIBCXXABI_LIBCXX_PATH "${PRJDIR}/libcxx") set(LIBCXX_CXX_ABI_INCLUDE_PATHS "${PRJDIR}/libcxxabi/include") set(LIBCXXABI_USE_LLVM_UNWINDER TRUE) add_subdirectory(projects/libcxxabi) add_subdirectory(projects/libcxx) [FILE:30:files/special.mk] CC= clang CXX= clang++