set(ARCH_SDL_INCLUDES
    ${ARCH_INCLUDES}
    ${CMAKE_SOURCE_DIR}/src
    ${CMAKE_SOURCE_DIR}/src/drive
    ${CMAKE_SOURCE_DIR}/src/c64
    ${CMAKE_SOURCE_DIR}/src/c64/cart
    ${CMAKE_SOURCE_DIR}/src/c64dtv
    ${CMAKE_SOURCE_DIR}/src/c128
    ${CMAKE_SOURCE_DIR}/src/vic20
    ${CMAKE_SOURCE_DIR}/src/pet
    ${CMAKE_SOURCE_DIR}/src/cbm2
    ${CMAKE_SOURCE_DIR}/src/plus4
    ${CMAKE_SOURCE_DIR}/src/raster
    ${CMAKE_SOURCE_DIR}/src/rs232drv
    ${CMAKE_SOURCE_DIR}/src/samplerdrv
    ${CMAKE_SOURCE_DIR}/src/sid
    ${CMAKE_SOURCE_DIR}/src/userport
    ${CMAKE_SOURCE_DIR}/src/vdrive
    ${CMAKE_SOURCE_DIR}/src/video
    ${CMAKE_SOURCE_DIR}/src/lib/p64
    ${CMAKE_SOURCE_DIR}/src/platform
    ${CMAKE_SOURCE_DIR}/src/joyport
    ${CMAKE_SOURCE_DIR}/src/gfxoutputdrv
    ${CMAKE_SOURCE_DIR}/src/tapeport
    ${CMAKE_SOURCE_DIR}/src/imagecontents
    )

set(ARCH_SDL_SOURCES
    video_sdl2.c
    archdep.c
    archdep.h
    fullscreen.c
    fullscreenarch.h
    icon.c
    icon.h
    joy.c
    joy.h
    kbd.c
    kbd.h
    lightpendrv.c
    lightpendrv.h
    menu_c128hw.c
    menu_c128hw.h
    menu_c64cart.c
    menu_c64cart.h
    menu_c64_common_expansions.c
    menu_c64_common_expansions.h
    menu_c64_expansions.c
    menu_c64_expansions.h
    menu_c64dtvhw.c
    menu_c64dtvhw.h
    menu_c64hw.c
    menu_c64hw.h
    menu_c64model.c
    menu_c64model.h
    menu_cbm2cart.c
    menu_cbm2cart.h
    menu_cbm2hw.c
    menu_cbm2hw.h
    menu_common.c
    menu_common.h
    menu_debug.c
    menu_debug.h
    menu_drive.c
    menu_drive.h
    menu_drive_rom.c
    menu_drive_rom.h
    menu_edit.c
    menu_edit.h
    menu_ethernet.c
    menu_ethernet.h
    menu_ethernetcart.c
    menu_ethernetcart.h
    menu_ffmpeg.c
    menu_ffmpeg.h
    menu_help.c
    menu_help.h
    menu_jam.c
    menu_jam.h
    menu_joyport.c
    menu_joyport.h
    menu_joystick.c
    menu_joystick.h
    menu_media.c
    menu_media.h
    menu_midi.c
    menu_midi.h
    menu_monitor.c
    menu_monitor.h
    menu_mouse.c
    menu_mouse.h
    menu_network.c
    menu_network.h
    menu_petcart.c
    menu_petcart.h
    menu_pethw.c
    menu_pethw.h
    menu_plus4cart.c
    menu_plus4cart.h
    menu_plus4hw.c
    menu_plus4hw.h
    menu_printer.c
    menu_printer.h
    menu_ram.c
    menu_ram.h
    menu_reset.c
    menu_reset.h
    menu_rom.c
    menu_rom.h
    menu_rs232.c
    menu_rs232.h
    menu_sampler.c
    menu_sampler.h
    menu_scpu64hw.c
    menu_scpu64hw.h
    menu_screenshot.c
    menu_screenshot.h
    menu_settings.c
    menu_settings.h
    menu_sid.c
    menu_sid.h
    menu_snapshot.c
    menu_snapshot.h
    menu_sound.c
    menu_sound.h
    menu_speed.c
    menu_speed.h
    menu_tape.c
    menu_tape.h
    menu_vic20cart.c
    menu_vic20cart.h
    menu_vic20hw.c
    menu_vic20hw.h
    menu_video.c
    menu_video.h
    mousedrv.c
    mousedrv.h
    sdlmain.c
    ui.c
    ui.h
    uifontscbm2.c
    uifontscrtc.c
    uifontsted.c
    uifontsvic.c
    uifontsvicii.c
    uifonts.c
    uifonts.h
    uifilereq.c
    uiimagefilereq.c
    uifilereq.h
    uihotkey.c
    uihotkey.h
    uimenu.c
    uimenu.h
    uimon.c
    uimsgbox.c
    uimsgbox.h
    uipause.c
    uipoll.c
    uipoll.h
    uistatusbar.c
    uistatusbar.h
    videoarch.h
    vkbd.c
    vkbd.h
    vsidui.c
    vsidui_sdl.h
    vsyncarch.c
    x128_ui.c
    x64_ui.c
    x64dtv_ui.c
    x64sc_ui.c
    xcbm2_ui.c
    xpet_ui.c
    xplus4_ui.c
    xscpu64_ui.c
    xvic_ui.c
    )

add_library(sdl STATIC ${ARCH_SDL_SOURCES})
target_include_directories(sdl PRIVATE ${ARCH_SDL_INCLUDES})

