cmake_minimum_required(VERSION 3.10) project(HeightMeasurementSystem VERSION 1.0.0 LANGUAGES CXX) set(CMAKE_CXX_STANDARD 17) set(CMAKE_CXX_STANDARD_REQUIRED ON) set(CMAKE_CXX_EXTENSIONS OFF) # Output directories set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin) set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/lib) set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/lib) # Include directories include_directories(${CMAKE_CURRENT_SOURCE_DIR}/include) # Main executable add_executable(hsm_main src/main.cpp src/app.cpp src/altitude_calculator.cpp src/data_logger.cpp src/sensor_simulator.cpp src/alert_manager.cpp ) # Test executable add_executable(hsm_test tests/basic_test.cpp src/altitude_calculator.cpp src/data_logger.cpp src/sensor_simulator.cpp src/alert_manager.cpp ) # Enable testing enable_testing() add_test(NAME BasicTest COMMAND hsm_test)