Skip to content
Snippets Groups Projects
CMakeLists.txt 1.68 KiB
Newer Older
Le-Bao-Tin.Ha's avatar
Le-Bao-Tin.Ha committed
cmake_minimum_required(VERSION 3.17)
Le-Bao-Tin.Ha's avatar
Le-Bao-Tin.Ha committed

Le-Bao-Tin.Ha's avatar
Le-Bao-Tin.Ha committed

Le-Bao-Tin.Ha's avatar
Le-Bao-Tin.Ha committed
set(CMAKE_C_STANDARD 90)
Le-Bao-Tin.Ha's avatar
Le-Bao-Tin.Ha committed
set(CMAKE_CXX_STANDARD 11)
Le-Bao-Tin.Ha's avatar
Le-Bao-Tin.Ha committed
if (WIN32)
    message ([STATUS]" os Windows")

    set(SDL2_INCLUDE_DIR C:/TDM-GCC-64/x86_64-w64-mingw32/include)
    set(SDL2_LIB_DIR C:/TDM-GCC-64/x86_64-w64-mingw32/lib)

Le-Bao-Tin.Ha's avatar
Le-Bao-Tin.Ha committed
    option(BUILD_TESTS OFF)
    set(BUILD_TESTS ON)

	include_directories(include)
Le-Bao-Tin.Ha's avatar
Le-Bao-Tin.Ha committed
    if(BUILD_TESTS)
        project(INSAGAMETEST C CXX)
        set(GTEST_INCLUDE_DIR /googletest/googletest/include)
        include_directories(test)
Le-Bao-Tin.Ha's avatar
Le-Bao-Tin.Ha committed
        include_directories(${GTEST_INCLUDE_DIR})
        enable_testing()

        add_subdirectory(googletest)
        file(GLOB_RECURSE SOURCES "src/*c" test_main.cpp)

        add_executable(INSAGAMETEST ${SOURCES})
        target_link_libraries(${PROJECT_NAME} mingw32 SDL2main SDL2 SDL2_image gtest gtest_main)
        add_test(
                NAME INSAGAMETEST
                COMMAND INSAGAMETEST
        )
    else()
Le-Bao-Tin.Ha's avatar
Le-Bao-Tin.Ha committed
        project(INSAGAME C)
        file(GLOB_RECURSE SOURCES "src/*c" main.c)
        add_executable(INSAGAME ${SOURCES})
        target_link_libraries(${PROJECT_NAME} mingw32 SDL2main SDL2 SDL2_image)

    endif(BUILD_TESTS)


Le-Bao-Tin.Ha's avatar
Le-Bao-Tin.Ha committed
else(APPLE)
    message([STATUS] "os Mac")

    set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${CMAKE_SOURCE_DIR}/cmake/")

    find_package( SDL2 REQUIRED )


    include_directories( ${SDL2_INCLUDE_DIRS} "/usr/local/Cellar/sdl2_image/2.0.5/include/SDL2" "include" )

    file(GLOB_RECURSE SOURCES "src/*c" main.c)
Le-Bao-Tin.Ha's avatar
Le-Bao-Tin.Ha committed
    add_executable(INSAGAME ${SOURCES} include/GAME.c include/GAME.h test_main.c test/testpersonnage.cpp)
    target_link_libraries(${PROJECT_NAME} ${SDL2_LIBRARIES} "-L/usr/local/Cellar/sdl2_image/2.0.5/lib  -lSDL2")