cmake_minimum_required(VERSION 3.16) project(bloom_filter_cpp LANGUAGES CXX) set(CMAKE_EXPORT_COMPILE_COMMANDS ON) add_library(bloom_filter src/bloom_filter.cpp ) target_include_directories(bloom_filter PUBLIC include) # I used to set this as set(CMAKE_CXX_STANDARD 20) but this is better # https://stackoverflow.com/questions/70667513/cmake-cxx-standard-vs-target-compile-features # doesn't matter for this specific project though target_compile_features(bloom_filter PUBLIC cxx_std_20)