# Find link platform-specific libraries find_package(SDL2 REQUIRED) find_package(OpenGL REQUIRED) # Setup endianess at compile time to optimize. include(TestBigEndian) test_big_endian(IS_BIG_ENDIAN) if(IS_BIG_ENDIAN) target_compile_definitions(${DUSK_LIBRARY_TARGET_NAME} PUBLIC DUSK_PLATFORM_ENDIAN_BIG ) else() target_compile_definitions(${DUSK_LIBRARY_TARGET_NAME} PUBLIC DUSK_PLATFORM_ENDIAN_LITTLE ) endif() # Link required libraries. target_link_libraries(${DUSK_LIBRARY_TARGET_NAME} PUBLIC SDL2 pthread OpenGL::GL GL m ) # Define platform-specific macros. target_compile_definitions(${DUSK_LIBRARY_TARGET_NAME} PUBLIC DUSK_SDL2 DUSK_OPENGL DUSK_LINUX DUSK_DISPLAY_SIZE_DYNAMIC DUSK_DISPLAY_WIDTH_DEFAULT=640 DUSK_DISPLAY_HEIGHT_DEFAULT=480 DUSK_DISPLAY_SCREEN_HEIGHT=240 DUSK_INPUT_KEYBOARD DUSK_INPUT_POINTER DUSK_INPUT_GAMEPAD DUSK_TIME_DYNAMIC )