cmake_minimum_required(VERSION 3.16) project(BinaryTable) set(CMAKE_CXX_STANDARD 17) set(CMAKE_CXX_STANDARD_REQUIRED ON) # Main executable with integrated binary table implementation add_executable(main binary_table.h binary_table.cpp ) # Compiler Settings if(MSVC) target_compile_options(main PRIVATE /W4) else() target_compile_options(main PRIVATE -Wall -Wextra -pedantic) endif() # Link required libraries if(UNIX AND NOT APPLE) # Only link stdc++fs on Linux, not macOS target_link_libraries(main PRIVATE stdc++fs) endif()