diff --git a/CMakeLists.txt b/CMakeLists.txt index 6a9b812..f84e172 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -19,12 +19,6 @@ include(CheckCXXSourceCompiles) set(DEFAULT_BUILD_TYPE "Release") -if(EMSCRIPTEN OR CMAKE_SYSTEM_NAME STREQUAL WASI) - set(WASM ON) -else() - set(WASM OFF) -endif() - if(NOT CMAKE_BUILD_TYPE AND NOT CMAKE_CONFIGURATION_TYPES) message( STATUS @@ -81,15 +75,6 @@ if(EMSCRIPTEN) endif() if(NOT USE_SIMD_FALLBACK) - cmake_push_check_state() - list(APPEND CMAKE_REQUIRED_FLAGS -msimd128) - check_include_file_cxx("wasm_simd128.h" HAS_WASM_SIMD) - if(HAS_WASM_SIMD) - add_compile_options(-msimd128) - add_compile_definitions(HAS_WASM_SIMD) - endif() - cmake_pop_check_state() - cmake_push_check_state() list(APPEND CMAKE_REQUIRED_FLAGS -mavx) check_include_file_cxx("immintrin.h" HAS_AVX) @@ -162,47 +147,40 @@ if(CMAKE_SOURCE_DIR STREQUAL CMAKE_CURRENT_SOURCE_DIR AND BUILD_TESTING) file(GLOB CORPUS_TESTS ${CMAKE_CURRENT_SOURCE_DIR}/corpus/*) - # extra testing that relies on shared libraries, which aren't available with - # wasm - if(NOT WASM) - # Shared library version of FoundationDB's skip list implementation - add_library(skip_list SHARED SkipList.cpp) - target_compile_options(skip_list PRIVATE -fno-exceptions - -fvisibility=hidden) - target_include_directories(skip_list - PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}/include) - set_target_properties( - skip_list PROPERTIES LIBRARY_OUTPUT_DIRECTORY - "${CMAKE_CURRENT_BINARY_DIR}/skip_list") - set_target_properties(skip_list PROPERTIES OUTPUT_NAME ${PROJECT_NAME}) - set_target_properties( - skip_list PROPERTIES VERSION ${PROJECT_VERSION} SOVERSION - ${PROJECT_VERSION_MAJOR}) + # Shared library version of FoundationDB's skip list implementation + add_library(skip_list SHARED SkipList.cpp) + target_compile_options(skip_list PRIVATE -fno-exceptions -fvisibility=hidden) + target_include_directories(skip_list + PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}/include) + set_target_properties( + skip_list PROPERTIES LIBRARY_OUTPUT_DIRECTORY + "${CMAKE_CURRENT_BINARY_DIR}/skip_list") + set_target_properties(skip_list PROPERTIES OUTPUT_NAME ${PROJECT_NAME}) + set_target_properties(skip_list PROPERTIES VERSION ${PROJECT_VERSION} + SOVERSION ${PROJECT_VERSION_MAJOR}) - # Shared library version of a std::unordered_map-based conflict set (point - # queries only) - add_library(hash_table SHARED HashTable.cpp) - target_compile_options(hash_table PRIVATE -fno-exceptions - -fvisibility=hidden) - target_include_directories(hash_table - PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}/include) - set_target_properties( - hash_table PROPERTIES LIBRARY_OUTPUT_DIRECTORY - "${CMAKE_CURRENT_BINARY_DIR}/hash_table") - set_target_properties(hash_table PROPERTIES OUTPUT_NAME ${PROJECT_NAME}) - set_target_properties( - hash_table PROPERTIES VERSION ${PROJECT_VERSION} SOVERSION - ${PROJECT_VERSION_MAJOR}) + # Shared library version of a std::unordered_map-based conflict set (point + # queries only) + add_library(hash_table SHARED HashTable.cpp) + target_compile_options(hash_table PRIVATE -fno-exceptions -fvisibility=hidden) + target_include_directories(hash_table + PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}/include) + set_target_properties( + hash_table PROPERTIES LIBRARY_OUTPUT_DIRECTORY + "${CMAKE_CURRENT_BINARY_DIR}/hash_table") + set_target_properties(hash_table PROPERTIES OUTPUT_NAME ${PROJECT_NAME}) + set_target_properties( + hash_table PROPERTIES VERSION ${PROJECT_VERSION} SOVERSION + ${PROJECT_VERSION_MAJOR}) - add_executable(driver_skip_list TestDriver.cpp) - target_compile_options(driver_skip_list PRIVATE ${TEST_FLAGS}) - target_link_libraries(driver_skip_list PRIVATE skip_list) + add_executable(driver_skip_list TestDriver.cpp) + target_compile_options(driver_skip_list PRIVATE ${TEST_FLAGS}) + target_link_libraries(driver_skip_list PRIVATE skip_list) - foreach(TEST ${CORPUS_TESTS}) - get_filename_component(hash ${TEST} NAME) - add_test(NAME skip_list_${hash} COMMAND driver_skip_list ${TEST}) - endforeach() - endif() + foreach(TEST ${CORPUS_TESTS}) + get_filename_component(hash ${TEST} NAME) + add_test(NAME skip_list_${hash} COMMAND driver_skip_list ${TEST}) + endforeach() # ad hoc testing add_executable(conflict_set_main ConflictSet.cpp) @@ -320,7 +298,7 @@ if(CMAKE_SOURCE_DIR STREQUAL CMAKE_CURRENT_SOURCE_DIR AND BUILD_TESTING) add_test(NAME conflict_set_cxx_api_test COMMAND conflict_set_cxx_api_test) # symbol visibility tests - if(NOT WASM AND NOT CMAKE_BUILD_TYPE STREQUAL Debug) + if(NOT CMAKE_BUILD_TYPE STREQUAL Debug) if(APPLE) set(symbol_exports ${CMAKE_CURRENT_SOURCE_DIR}/apple-symbol-exports.txt) set(symbol_imports ${CMAKE_CURRENT_SOURCE_DIR}/apple-symbol-imports.txt)