[libcxx-commits] [libcxx] a469ce4 - [libc++] Improves modular build.
Mark de Wever via libcxx-commits
libcxx-commits at lists.llvm.org
Tue Oct 18 09:46:55 PDT 2022
Author: Mark de Wever
Date: 2022-10-18T18:46:50+02:00
New Revision: a469ce4f505e35d06c8196dfaa218f0527e9a98c
URL: https://github.com/llvm/llvm-project/commit/a469ce4f505e35d06c8196dfaa218f0527e9a98c
DIFF: https://github.com/llvm/llvm-project/commit/a469ce4f505e35d06c8196dfaa218f0527e9a98c.diff
LOG: [libc++] Improves modular build.
Makes sure headers having a std::ranges::less as default argument export
the proper header. Without exporting these modularized headers are not
self contained.
Reviewed By: #libc, ldionne
Differential Revision: https://reviews.llvm.org/D136045
Added:
Modified:
libcxx/include/module.modulemap.in
Removed:
################################################################################
diff --git a/libcxx/include/module.modulemap.in b/libcxx/include/module.modulemap.in
index d224c5ba9081..2794edea565b 100644
--- a/libcxx/include/module.modulemap.in
+++ b/libcxx/include/module.modulemap.in
@@ -316,8 +316,14 @@ module std [system] {
module ranges_adjacent_find { private header "__algorithm/ranges_adjacent_find.h" }
module ranges_all_of { private header "__algorithm/ranges_all_of.h" }
module ranges_any_of { private header "__algorithm/ranges_any_of.h" }
- module ranges_binary_search { private header "__algorithm/ranges_binary_search.h" }
- module ranges_clamp { private header "__algorithm/ranges_clamp.h" }
+ module ranges_binary_search {
+ private header "__algorithm/ranges_binary_search.h"
+ export functional.__functional.ranges_operations
+ }
+ module ranges_clamp {
+ private header "__algorithm/ranges_clamp.h"
+ export functional.__functional.ranges_operations
+ }
module ranges_copy { private header "__algorithm/ranges_copy.h" }
module ranges_copy_backward { private header "__algorithm/ranges_copy_backward.h" }
module ranges_copy_if { private header "__algorithm/ranges_copy_if.h" }
@@ -325,7 +331,10 @@ module std [system] {
module ranges_count { private header "__algorithm/ranges_count.h" }
module ranges_count_if { private header "__algorithm/ranges_count_if.h" }
module ranges_equal { private header "__algorithm/ranges_equal.h" }
- module ranges_equal_range { private header "__algorithm/ranges_equal_range.h" }
+ module ranges_equal_range {
+ private header "__algorithm/ranges_equal_range.h"
+ export functional.__functional.ranges_operations
+ }
module ranges_fill { private header "__algorithm/ranges_fill.h" }
module ranges_fill_n { private header "__algorithm/ranges_fill_n.h" }
module ranges_find { private header "__algorithm/ranges_find.h" }
@@ -337,39 +346,105 @@ module std [system] {
module ranges_for_each_n { private header "__algorithm/ranges_for_each_n.h" }
module ranges_generate { private header "__algorithm/ranges_generate.h" }
module ranges_generate_n { private header "__algorithm/ranges_generate_n.h" }
- module ranges_includes { private header "__algorithm/ranges_includes.h" }
- module ranges_inplace_merge { private header "__algorithm/ranges_inplace_merge.h" }
- module ranges_is_heap { private header "__algorithm/ranges_is_heap.h" }
- module ranges_is_heap_until { private header "__algorithm/ranges_is_heap_until.h" }
+ module ranges_includes {
+ private header "__algorithm/ranges_includes.h"
+ export functional.__functional.ranges_operations
+ }
+ module ranges_inplace_merge {
+ private header "__algorithm/ranges_inplace_merge.h"
+ export functional.__functional.ranges_operations
+ }
+ module ranges_is_heap {
+ private header "__algorithm/ranges_is_heap.h"
+ export functional.__functional.ranges_operations
+ }
+ module ranges_is_heap_until {
+ private header "__algorithm/ranges_is_heap_until.h"
+ export functional.__functional.ranges_operations
+ }
module ranges_is_partitioned { private header "__algorithm/ranges_is_partitioned.h" }
module ranges_is_permutation { private header "__algorithm/ranges_is_permutation.h" }
- module ranges_is_sorted { private header "__algorithm/ranges_is_sorted.h" }
- module ranges_is_sorted_until { private header "__algorithm/ranges_is_sorted_until.h" }
+ module ranges_is_sorted {
+ private header "__algorithm/ranges_is_sorted.h"
+ export functional.__functional.ranges_operations
+ }
+ module ranges_is_sorted_until {
+ private header "__algorithm/ranges_is_sorted_until.h"
+ export functional.__functional.ranges_operations
+ }
module ranges_iterator_concept { private header "__algorithm/ranges_iterator_concept.h" }
- module ranges_lexicographical_compare { private header "__algorithm/ranges_lexicographical_compare.h" }
- module ranges_lower_bound { private header "__algorithm/ranges_lower_bound.h" }
- module ranges_make_heap { private header "__algorithm/ranges_make_heap.h" }
- module ranges_max { private header "__algorithm/ranges_max.h" }
- module ranges_max_element { private header "__algorithm/ranges_max_element.h" }
+ module ranges_lexicographical_compare {
+ private header "__algorithm/ranges_lexicographical_compare.h"
+ export functional.__functional.ranges_operations
+ }
+ module ranges_lower_bound {
+ private header "__algorithm/ranges_lower_bound.h"
+ export functional.__functional.ranges_operations
+ }
+ module ranges_make_heap {
+ private header "__algorithm/ranges_make_heap.h"
+ export functional.__functional.ranges_operations
+ }
+ module ranges_max {
+ private header "__algorithm/ranges_max.h"
+ export functional.__functional.ranges_operations
+ }
+ module ranges_max_element {
+ private header "__algorithm/ranges_max_element.h"
+ export functional.__functional.ranges_operations
+ }
module ranges_merge { private header "__algorithm/ranges_merge.h" }
- module ranges_min { private header "__algorithm/ranges_min.h" }
- module ranges_min_element { private header "__algorithm/ranges_min_element.h" }
- module ranges_minmax { private header "__algorithm/ranges_minmax.h" }
- module ranges_minmax_element { private header "__algorithm/ranges_minmax_element.h" }
+ module ranges_min {
+ private header "__algorithm/ranges_min.h"
+ export functional.__functional.ranges_operations
+ }
+ module ranges_min_element {
+ private header "__algorithm/ranges_min_element.h"
+ export functional.__functional.ranges_operations
+ }
+ module ranges_minmax {
+ private header "__algorithm/ranges_minmax.h"
+ export functional.__functional.ranges_operations
+ }
+ module ranges_minmax_element {
+ private header "__algorithm/ranges_minmax_element.h"
+ export functional.__functional.ranges_operations
+ }
module ranges_mismatch { private header "__algorithm/ranges_mismatch.h" }
module ranges_move { private header "__algorithm/ranges_move.h" }
module ranges_move_backward { private header "__algorithm/ranges_move_backward.h" }
- module ranges_next_permutation { private header "__algorithm/ranges_next_permutation.h" }
+ module ranges_next_permutation {
+ private header "__algorithm/ranges_next_permutation.h"
+ export functional.__functional.ranges_operations
+ }
module ranges_none_of { private header "__algorithm/ranges_none_of.h" }
- module ranges_nth_element { private header "__algorithm/ranges_nth_element.h" }
- module ranges_partial_sort { private header "__algorithm/ranges_partial_sort.h" }
- module ranges_partial_sort_copy { private header "__algorithm/ranges_partial_sort_copy.h" }
+ module ranges_nth_element {
+ private header "__algorithm/ranges_nth_element.h"
+ export functional.__functional.ranges_operations
+ }
+ module ranges_partial_sort {
+ private header "__algorithm/ranges_partial_sort.h"
+ export functional.__functional.ranges_operations
+ }
+ module ranges_partial_sort_copy {
+ private header "__algorithm/ranges_partial_sort_copy.h"
+ export functional.__functional.ranges_operations
+ }
module ranges_partition { private header "__algorithm/ranges_partition.h" }
module ranges_partition_copy { private header "__algorithm/ranges_partition_copy.h" }
module ranges_partition_point { private header "__algorithm/ranges_partition_point.h" }
- module ranges_pop_heap { private header "__algorithm/ranges_pop_heap.h" }
- module ranges_prev_permutation { private header "__algorithm/ranges_prev_permutation.h" }
- module ranges_push_heap { private header "__algorithm/ranges_push_heap.h" }
+ module ranges_pop_heap {
+ private header "__algorithm/ranges_pop_heap.h"
+ export functional.__functional.ranges_operations
+ }
+ module ranges_prev_permutation {
+ private header "__algorithm/ranges_prev_permutation.h"
+ export functional.__functional.ranges_operations
+ }
+ module ranges_push_heap {
+ private header "__algorithm/ranges_push_heap.h"
+ export functional.__functional.ranges_operations
+ }
module ranges_remove { private header "__algorithm/ranges_remove.h" }
module ranges_remove_copy { private header "__algorithm/ranges_remove_copy.h" }
module ranges_remove_copy_if { private header "__algorithm/ranges_remove_copy_if.h" }
@@ -387,13 +462,28 @@ module std [system] {
module ranges_search_n { private header "__algorithm/ranges_search_n.h" }
module ranges_set_
diff erence { private header "__algorithm/ranges_set_
diff erence.h" }
module ranges_set_intersection { private header "__algorithm/ranges_set_intersection.h" }
- module ranges_set_symmetric_
diff erence { private header "__algorithm/ranges_set_symmetric_
diff erence.h" }
- module ranges_set_union { private header "__algorithm/ranges_set_union.h" }
+ module ranges_set_symmetric_
diff erence {
+ private header "__algorithm/ranges_set_symmetric_
diff erence.h"
+ export functional.__functional.ranges_operations
+ }
+ module ranges_set_union {
+ private header "__algorithm/ranges_set_union.h"
+ export functional.__functional.ranges_operations
+ }
module ranges_shuffle { private header "__algorithm/ranges_shuffle.h" }
- module ranges_sort { private header "__algorithm/ranges_sort.h" }
- module ranges_sort_heap { private header "__algorithm/ranges_sort_heap.h" }
+ module ranges_sort {
+ private header "__algorithm/ranges_sort.h"
+ export functional.__functional.ranges_operations
+ }
+ module ranges_sort_heap {
+ private header "__algorithm/ranges_sort_heap.h"
+ export functional.__functional.ranges_operations
+ }
module ranges_stable_partition { private header "__algorithm/ranges_stable_partition.h" }
- module ranges_stable_sort { private header "__algorithm/ranges_stable_sort.h" }
+ module ranges_stable_sort {
+ private header "__algorithm/ranges_stable_sort.h"
+ export functional.__functional.ranges_operations
+ }
module ranges_swap_ranges { private header "__algorithm/ranges_swap_ranges.h" }
module ranges_transform { private header "__algorithm/ranges_transform.h" }
module uniform_random_bit_generator_adaptor {
@@ -401,7 +491,10 @@ module std [system] {
}
module ranges_unique { private header "__algorithm/ranges_unique.h" }
module ranges_unique_copy { private header "__algorithm/ranges_unique_copy.h" }
- module ranges_upper_bound { private header "__algorithm/ranges_upper_bound.h" }
+ module ranges_upper_bound {
+ private header "__algorithm/ranges_upper_bound.h"
+ export functional.__functional.ranges_operations
+ }
module remove { private header "__algorithm/remove.h" }
module remove_copy { private header "__algorithm/remove_copy.h" }
module remove_copy_if { private header "__algorithm/remove_copy_if.h" }
@@ -798,7 +891,10 @@ module std [system] {
module iter_swap { private header "__iterator/iter_swap.h" }
module iterator { private header "__iterator/iterator.h" }
module iterator_traits { private header "__iterator/iterator_traits.h" }
- module mergeable { private header "__iterator/mergeable.h" }
+ module mergeable {
+ private header "__iterator/mergeable.h"
+ export functional.__functional.ranges_operations
+ }
module move_iterator { private header "__iterator/move_iterator.h" }
module move_sentinel { private header "__iterator/move_sentinel.h" }
module next { private header "__iterator/next.h" }
@@ -814,7 +910,10 @@ module std [system] {
module reverse_access { private header "__iterator/reverse_access.h" }
module reverse_iterator { private header "__iterator/reverse_iterator.h" }
module size { private header "__iterator/size.h" }
- module sortable { private header "__iterator/sortable.h" }
+ module sortable {
+ private header "__iterator/sortable.h"
+ export functional.__functional.ranges_operations
+ }
module unreachable_sentinel { private header "__iterator/unreachable_sentinel.h" }
module wrap_iter { private header "__iterator/wrap_iter.h" }
}
More information about the libcxx-commits
mailing list