cmake_minimum_required(VERSION 3.0) # Library add_library(neuralnet src/matrix.c src/neuralnet.c src/train.c) target_include_directories(neuralnet PUBLIC include) target_link_libraries(neuralnet PRIVATE math # System math library. random) target_compile_options(neuralnet PRIVATE -Wall -Wextra) # Test add_executable(neuralnet-test test/matrix_test.c test/neuralnet_test.c test/test_main.c test/train_linear_perceptron_test.c test/train_linear_perceptron_non_origin_test.c test/train_sigmoid_test.c test/train_xor_test.c) target_link_libraries(neuralnet-test PRIVATE neuralnet) # So that we can include header files from the private implementation. target_include_directories(neuralnet-test PRIVATE src) target_compile_options(neuralnet-test PRIVATE -DUNIT_TEST -Wall -Wextra)