cmake_minimum_required(VERSION 3.3) project (game C) include(CTest) enable_testing() set(CMAKE_C_FLAGS "-std=c99 -g -Wall") link_directories(${CMAKE_SOURCE_DIR}) file(COPY ressources DESTINATION ${CMAKE_CURRENT_BINARY_DIR}) include(sdl2.cmake) message(STATUS "SDL2 include dir: ${SDL2_ALL_INC}") message(STATUS "SDL2 all libraries: ${SDL2_ALL_LIBS}") include_directories(${SDL2_ALL_INC}) add_library(game game.c game_aux.c game_ext.c game_tools.c) add_executable(game_text game_text.c game_aux.h game.h game_ext.h game_tools.h) target_link_libraries(game_text game) add_executable(game_random game_random.c game_aux.h game.h game_ext.h game_tools.h) target_link_libraries(game_random game) add_executable(game_solve game_solve.c game_aux.h game.h game_ext.h game_tools.h) target_link_libraries(game_solve game ) add_executable(game_sdl game_sdl.c game_aux.h game.h game_ext.h game_tools.h) target_link_libraries(game_sdl game ${SDL2_ALL_LIBS}) add_executable(game_test_niclespinass game_test_niclespinass.c game_aux.h game.h) target_link_libraries(game_test_niclespinass game) add_executable(game_test_pricaud game_test_pricaud.c game_aux.h game.h) target_link_libraries(game_test_pricaud game) add_executable(game_test_archaminade game_test_archaminade.c game_aux.h game.h) target_link_libraries(game_test_archaminade game) add_test(test_niclespinass_dummy ./game_test_niclespinass dummy) add_test(test_pricaud_dummy ./game_test_pricaud dummy) add_test(test_archaminade_dummy ./game_test_archaminade dummy) add_test(test_niclespinass_new_empty ./game_test_niclespinass new_empty) add_test(test_niclespinass_won ./game_test_niclespinass won) add_test(test_niclespinass_default ./game_test_niclespinass default) add_test(test_niclespinass_play_move ./game_test_niclespinass play_move) add_test(test_niclespinass_reset_orientation ./game_test_niclespinass reset_orientation) add_test(test_niclespinass_get_piece_orientation ./game_test_niclespinass get_piece_orientation) add_test(test_niclespinass_get_piece_shape ./game_test_niclespinass get_piece_shape) add_test(test_niclespinass_new ./game_test_niclespinass new) add_test(test_niclespinass_copy ./game_test_niclespinass copy) add_test(test_niclespinass_random ./game_test_niclespinass random) add_test(test_niclespinass_load ./game_test_niclespinass load) add_test(test_pricaud_set_piece_shape ./game_test_pricaud set_piece_shape) add_test(test_pricaud_set_piece_orientation ./game_test_pricaud set_piece_orientation) add_test(test_pricaud_is_connected ./game_test_pricaud is_connected) add_test(test_pricaud_equal ./game_test_pricaud equal) add_test(test_pricaud_shuffle_orientation ./game_test_pricaud shuffle_orientation) add_test(test_pricaud_get_adjacent_square ./game_test_pricaud get_adjacent_square) add_test(test_pricaud_check_edge ./game_test_pricaud check_edge) add_test(test_pricaud_is_well_paired ./game_test_pricaud is_well_paired) add_test(test_pricaud_default_solution ./game_test_pricaud default_solution) add_test(test_pricaud_undo ./game_test_pricaud undo) add_test(test_pricaud_redo ./game_test_pricaud redo) add_test(test_pricaud_has_half_edge ./game_test_pricaud has_half_edge) add_test(test_pricaud_solve ./game_test_pricaud solve) add_test(test_pricaud_nb_solutions ./game_test_pricaud nb_solutions) add_test(test_archaminade_game_print ./game_test_archaminade game_print) add_test(test_archaminade_game_delete ./game_test_archaminade game_delete) add_test(test_archaminade_game_new ./game_test_archaminade game_new) add_test(test_archaminade_game_is_well_paired ./game_test_archaminade game_is_well_paired) add_test(test_archaminade_game_has_half_edge ./game_test_archaminade game_has_half_edge) add_test(test_archaminade_game_new_ext ./game_test_archaminade game_new_ext) add_test(test_archaminade_game_get_piece_shape ./game_test_archaminade game_get_piece_shape) add_test(test_archaminade_game_new_empty_ext ./game_test_archaminade game_new_empty_ext) add_test(test_archaminade_game_is_wrapping ./game_test_archaminade game_is_wrapping) add_test(test_archaminade_game_save ./game_test_archaminade game_save) add_test(test_archaminade_game_load ./game_test_archaminade game_load) add_test(test_archaminade_game_nb_solutions ./game_test_archaminade game_nb_solutions) add_test(test_archaminade_game_solve ./game_test_archaminade game_solve)