diff --git a/libc/cmake/modules/LLVMLibCCompileOptionRules.cmake b/libc/cmake/modules/LLVMLibCCompileOptionRules.cmake index 426fcef7e36f..cb1a3ec534a9 100644 --- a/libc/cmake/modules/LLVMLibCCompileOptionRules.cmake +++ b/libc/cmake/modules/LLVMLibCCompileOptionRules.cmake @@ -182,10 +182,6 @@ function(_get_compile_options_from_config output_var) libc_add_definition(config_options "LIBC_COPT_PRINTF_DISABLE_BITINT") endif() - if(LIBC_COPT_USE_C_ASSERT) - list(APPEND config_options "-DLIBC_COPT_USE_C_ASSERT") - endif() - set(${output_var} ${config_options} PARENT_SCOPE) endfunction(_get_compile_options_from_config) diff --git a/libc/config/config.json b/libc/config/config.json index 506526bbb1fc..39cb2d8cfa33 100644 --- a/libc/config/config.json +++ b/libc/config/config.json @@ -186,11 +186,5 @@ "value": false, "doc": "Trap with SIGFPE when feraiseexcept is called with unmasked floating point exceptions, similar to glibc's behavior. This is currently working only on x86 with SSE." } - }, - "assert": { - "LIBC_COPT_USE_C_ASSERT": { - "value": false, - "doc": "Use the system assert macro for LIBC_ASSERT." - } } } diff --git a/libc/config/gpu/config.json b/libc/config/gpu/config.json index c6318faaa353..ef13f6a70463 100644 --- a/libc/config/gpu/config.json +++ b/libc/config/gpu/config.json @@ -49,10 +49,5 @@ "LIBC_CONF_ENABLE_STRONG_STACK_PROTECTOR": { "value": false } - }, - "assert": { - "LIBC_COPT_USE_C_ASSERT": { - "value": true - } } } diff --git a/libc/src/__support/CMakeLists.txt b/libc/src/__support/CMakeLists.txt index 08a4db8e49a7..6a3d90e53159 100644 --- a/libc/src/__support/CMakeLists.txt +++ b/libc/src/__support/CMakeLists.txt @@ -369,23 +369,15 @@ add_header_library( libc.src.__support.macros.properties.types ) -if(LIBC_COPT_USE_C_ASSERT OR NOT LLVM_LIBC_FULL_BUILD) - add_header_library( - libc_assert - HDRS - libc_assert.h - ) -else() - add_header_library( - libc_assert - HDRS - libc_assert.h - DEPENDS - .integer_to_string - libc.src.__support.OSUtil.osutil - libc.src.__support.macros.optimization - ) -endif() +add_header_library( + libc_assert + HDRS + libc_assert.h + DEPENDS + .integer_to_string + libc.src.__support.OSUtil.osutil + libc.src.__support.macros.optimization +) add_header_library( hash diff --git a/libc/src/__support/time/CMakeLists.txt b/libc/src/__support/time/CMakeLists.txt index f007f95bbee4..3cc3fd873220 100644 --- a/libc/src/__support/time/CMakeLists.txt +++ b/libc/src/__support/time/CMakeLists.txt @@ -7,11 +7,9 @@ add_header_library( libc.hdr.types.time_t ) -if(EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/${LIBC_TARGET_OS} - AND TARGET libc.src.__support.OSUtil.osutil) +if(EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/${LIBC_TARGET_OS}) add_subdirectory(${LIBC_TARGET_OS}) else() - message(STATUS "Skip libc.src.__support.time.* targets.") return() endif() diff --git a/libc/src/time/linux/CMakeLists.txt b/libc/src/time/linux/CMakeLists.txt index 623f01eb0d78..6ea04597063c 100644 --- a/libc/src/time/linux/CMakeLists.txt +++ b/libc/src/time/linux/CMakeLists.txt @@ -1,9 +1,3 @@ -if(NOT TARGET libc.src.__support.OSUtil.osutil) - message(STATUS "libc.src.__support.OSUtil.osutil is not available. " - "Skip libc.src.time.linux.* targets.") - return() -endif() - add_entrypoint_object( timespec_get SRCS diff --git a/libc/src/unistd/CMakeLists.txt b/libc/src/unistd/CMakeLists.txt index 5e6df74ac92d..4d78b4a7fbc8 100644 --- a/libc/src/unistd/CMakeLists.txt +++ b/libc/src/unistd/CMakeLists.txt @@ -1,9 +1,3 @@ -if(NOT TARGET libc.src.__support.OSUtil.osutil) - message(STATUS "libc.src.__support.OSUtil.osutil is not avaiable. " - "Skip unistd targets.") - return() -endif() - if(EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/${LIBC_TARGET_OS}) add_subdirectory(${CMAKE_CURRENT_SOURCE_DIR}/${LIBC_TARGET_OS}) endif() diff --git a/libc/test/UnitTest/CMakeLists.txt b/libc/test/UnitTest/CMakeLists.txt index aa245b223479..54e41ece5f4d 100644 --- a/libc/test/UnitTest/CMakeLists.txt +++ b/libc/test/UnitTest/CMakeLists.txt @@ -3,7 +3,7 @@ function(add_unittest_framework_library name) "TEST_LIB" "" # No optional arguments "" # No single value arguments - "SRCS;HDRS;DEPENDS;COMPILE_OPTIONS" # Multi value arguments + "SRCS;HDRS;DEPENDS" # Multi value arguments ${ARGN} ) if(NOT TEST_LIB_SRCS) @@ -30,17 +30,14 @@ function(add_unittest_framework_library name) # making LibcFPExceptionHelpers and LibcDeathTestExecutors hermetic. set(LLVM_LIBC_FULL_BUILD "") _get_common_test_compile_options(compile_options "" "") + target_compile_options(${name}.unit PRIVATE ${compile_options}) set(LLVM_LIBC_FULL_BUILD ON) else() _get_common_test_compile_options(compile_options "" "") + target_compile_options(${name}.unit PRIVATE ${compile_options}) endif() - if (TEST_LIB_COMPILE_OPTIONS) - list(APPEND compile_options ${TEST_LIB_COMPILE_OPTIONS}) - endif() - target_compile_options(${name}.unit PRIVATE ${compile_options}) - - _get_hermetic_test_compile_options(compile_options "") + _get_hermetic_test_compile_options(compile_options "") target_include_directories(${name}.hermetic PRIVATE ${LIBC_INCLUDE_DIR}) target_compile_options(${name}.hermetic PRIVATE ${compile_options} -nostdinc++) @@ -60,15 +57,6 @@ function(add_unittest_framework_library name) endif() endfunction() -if (NOT TARGET libc.src.__support.OSUtil.osutil OR NOT LLVM_LIBC_FULL_BUILD) - message(STATUS "TestLogger will use system libc's stdio to print.") - set(test_logger_compile_options "-DLIBC_TEST_USE_SYSTEM_PRINTF") - set(test_logger_osutil "") -else() - set(test_logger_compile_options "") - set(test_logger_osutil "libc.src.__support.OSUtil.osutil") -endif() - add_unittest_framework_library( LibcTest SRCS @@ -80,8 +68,6 @@ add_unittest_framework_library( LibcTest.h Test.h TestLogger.h - COMPILE_OPTIONS - ${test_logger_compile_options} DEPENDS libc.hdr.stdint_proxy libc.src.__support.big_int @@ -92,8 +78,8 @@ add_unittest_framework_library( libc.src.__support.fixed_point.fx_rep libc.src.__support.macros.properties.compiler libc.src.__support.macros.properties.types + libc.src.__support.OSUtil.osutil libc.src.__support.uint128 - ${test_logger_osutil} ) set(libc_death_test_srcs LibcDeathTestExecutors.cpp) diff --git a/libc/test/UnitTest/TestLogger.cpp b/libc/test/UnitTest/TestLogger.cpp index 170dd8704a92..3d95d48a5f5a 100644 --- a/libc/test/UnitTest/TestLogger.cpp +++ b/libc/test/UnitTest/TestLogger.cpp @@ -2,38 +2,19 @@ #include "hdr/stdint_proxy.h" #include "src/__support/CPP/string.h" #include "src/__support/CPP/string_view.h" +#include "src/__support/OSUtil/io.h" // write_to_stderr #include "src/__support/big_int.h" // is_big_int #include "src/__support/macros/config.h" #include "src/__support/macros/properties/types.h" // LIBC_TYPES_HAS_INT128 #include "src/__support/uint128.h" -#ifdef LIBC_TEST_USE_SYSTEM_PRINTF - -#include - -namespace LIBC_NAMESPACE_DECL { -namespace testing { - -void write_to_stderr(cpp::string_view str) { - fprintf(stderr, "%.*s", static_cast(str.size()), str.data()); -} - -} // namespace testing -} // namespace LIBC_NAMESPACE_DECL - -#else // !LIBC_TEST_USE_SYSTEM_PRINTF - -#include "src/__support/OSUtil/io.h" // write_to_stderr - -#endif // LIBC_TEST_USE_SYSTEM_PRINTF - namespace LIBC_NAMESPACE_DECL { namespace testing { // cpp::string_view specialization template <> TestLogger &TestLogger::operator<< (cpp::string_view str) { - write_to_stderr(str); + LIBC_NAMESPACE::write_to_stderr(str); return *this; }