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.