summaryrefslogtreecommitdiffstats
path: root/libc/src/stdbit/CMakeLists.txt
diff options
context:
space:
mode:
Diffstat (limited to 'libc/src/stdbit/CMakeLists.txt')
-rw-r--r--libc/src/stdbit/CMakeLists.txt46
1 files changed, 27 insertions, 19 deletions
diff --git a/libc/src/stdbit/CMakeLists.txt b/libc/src/stdbit/CMakeLists.txt
index 2aef2029f2df..0c22b1d2617a 100644
--- a/libc/src/stdbit/CMakeLists.txt
+++ b/libc/src/stdbit/CMakeLists.txt
@@ -1,30 +1,38 @@
+function(declare_dependencies prefixes dependencies)
+ set(suffixes c s i l ll)
+ foreach(prefix ${prefixes})
+ foreach(suffix IN LISTS suffixes)
+ add_entrypoint_object(
+ stdc_${prefix}_u${suffix}
+ SRCS
+ stdc_${prefix}_u${suffix}.cpp
+ HDRS
+ stdc_${prefix}_u${suffix}.h
+ DEPENDS
+ ${dependencies}
+ )
+ endforeach()
+ endforeach()
+endfunction()
+
+
set(prefixes
leading_zeros
leading_ones
trailing_zeros
trailing_ones
- first_leading_zero
- first_leading_one
- first_trailing_zero
- first_trailing_one
- count_zeros
count_ones
has_single_bit
bit_width
bit_floor
bit_ceil
)
-set(suffixes c s i l ll)
-foreach(prefix IN LISTS prefixes)
- foreach(suffix IN LISTS suffixes)
- add_entrypoint_object(
- stdc_${prefix}_u${suffix}
- SRCS
- stdc_${prefix}_u${suffix}.cpp
- HDRS
- stdc_${prefix}_u${suffix}.h
- DEPENDS
- libc.src.__support.CPP.bit
- )
- endforeach()
-endforeach()
+declare_dependencies("${prefixes}" libc.src.__support.CPP.bit)
+set(prefixes
+ first_leading_zero
+ first_leading_one
+ first_trailing_zero
+ first_trailing_one
+ count_zeros
+)
+declare_dependencies("${prefixes}" libc.src.__support.math_extras)