Wrong SDL_config.h when building SDL2 with cmake

Viewed 340

I have been trying to add SDL2 to my project using CMake. My CMakeLists.txt looks like this.

...

include_directories(
    ${PROJECT_SOURCE_DIR}/src
    ${PROJECT_SOURCE_DIR}/test
    ${PROJECT_SOURCE_DIR}/external
    ${PROJECT_SOURCE_DIR}/external/KHR
    ${PROJECT_SOURCE_DIR}/external/glm
    ${PROJECT_SOURCE_DIR}/external/nvToolsExt
    ${PROJECT_SOURCE_DIR}/external/stb_image
    ${PROJECT_SOURCE_DIR}/external/SDL2/include
    ${PROJECT_SOURCE_DIR}/external/assimp/include
)

# Setup dependencies
link_directories(
    ${PROJECT_SOURCE_DIR}/external/SDL2/lib/x64
    ${PROJECT_SOURCE_DIR}/external/assimp/lib
)

# Glad
add_subdirectory(external/glad)

# ImGui
add_subdirectory(external/imgui)

# Assimp
add_subdirectory(external/assimp ${EXECUTABLE_OUTPUT_PATH}/external/assimp)

# SDL2
add_subdirectory(external/SDL2 ${EXECUTABLE_OUTPUT_PATH}/external/SDL2)

# Setup build
set(TARGET_NAME sre)

set_property(DIRECTORY PROPERTY VS_STARTUP_PROJECT ${TARGET_NAME})

add_executable(${TARGET_NAME} ${SRC_FILES})

set_target_properties(sre PROPERTIES
    VS_DEBUGGER_WORKING_DIRECTORY "${PROJECT_SOURCE_DIR}"
)

target_link_libraries(
    ${TARGET_NAME}
    opengl32
    SDL2Main
    SDL2
    glad
    imgui
    assimp
)

It generates the VS solution correctly but when I build it I get the following error from SDL2:

external\sdl2\include\sdl_config.h(52): fatal error C1189: #error:  Wrong SDL_config.h, check your include path?

As a result, my build fails. I'm kind of a noob using cmake so any sort of advice is welcome.

0 Answers
Related