diff --git a/rvvm.patch b/rvvm.patch index 393e76f..0fdd7a3 100644 --- a/rvvm.patch +++ b/rvvm.patch @@ -1,4 +1,53 @@ patch file +diff --git a/CMakeLists.txt b/CMakeLists.txt +index db82e07..04369ef 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -18,6 +18,7 @@ option(RVVM_USE_NET "Use networking" ON) + option(RVVM_USE_TAP_LINUX "Use Linux TAP (deprecated)" OFF) + option(RVVM_USE_FDT "Use Flattened Device Tree generation" ON) + option(RVVM_USE_PCI "Use ATA over PCI, PIO mode is used otherwise" ON) ++option(RVVM_USE_VIRTIO "Use Virtio" ON) + option(RVVM_USE_SPINLOCK_DEBUG "Use spinlock debugging" ON) + option(RVVM_USE_PRECISE_FS "Use precise FPU status tracking" OFF) + option(RVVM_USE_LIB "Build shared librvvm library" ON) +@@ -183,6 +184,10 @@ file(GLOB RVVM_DEVICES_SRC LIST_DIRECTORIES FALSE CONFIGURE_DEPENDS + "${RVVM_SRC_DIR}/devices/*.h" + "${RVVM_SRC_DIR}/devices/*.c" + ) ++file(GLOB RVVM_DEVICES_VIRTIO_SRC LIST_DIRECTORIES FALSE CONFIGURE_DEPENDS ++ "${RVVM_SRC_DIR}/devices/virtio*.h" ++ "${RVVM_SRC_DIR}/devices/virtio*.c" ++) + set(RVVM_XCB_SRC "${RVVM_SRC_DIR}/devices/x11window_xcb.c") + set(RVVM_XLIB_SRC "${RVVM_SRC_DIR}/devices/x11window_xlib.c") + set(RVVM_WIN32_SRC "${RVVM_SRC_DIR}/devices/win32window.c") +@@ -190,13 +195,24 @@ set(RVVM_HAIKU_SRC "${RVVM_SRC_DIR}/devices/haiku_window.cpp") + set(RVVM_SDL_SRC "${RVVM_SRC_DIR}/devices/sdl_window.c") + set(RVVM_TAP_LINUX_SRC "${RVVM_SRC_DIR}/devices/tap_linux.c") + set(RVVM_TAP_USER_SRC "${RVVM_SRC_DIR}/devices/tap_user.c") ++set(RVVM_VIRTIO_WINDOW_SRC "${RVVM_SRC_DIR}/devices/virtio_window.c") + list(REMOVE_ITEM RVVM_DEVICES_SRC + ${RVVM_XLIB_SRC} + ${RVVM_WIN32_SRC} + ${RVVM_HAIKU_SRC} + ${RVVM_SDL_SRC} + ${RVVM_TAP_LINUX_SRC} +- ${RVVM_TAP_USER_SRC}) ++ ${RVVM_TAP_USER_SRC} ++ ${RVVM_VIRTIO_WINDOW_SRC} ++) ++ ++if (NOT RVVM_USE_VIRTIO) ++ list(REMOVE_ITEM RVVM_DEVICES_SRC ++ ${RVVM_DEVICES_VIRTIO_SRC} ++ ) ++else() ++ target_compile_definitions(rvvm_common INTERFACE USE_VIRTIO=1) ++endif + + if (RVVM_USE_GUI AND (NOT BUILD_LIBRETRO)) + target_compile_definitions(rvvm_common INTERFACE USE_GUI) diff --git a/Makefile b/Makefile index db2cbc5..01dd2c1 100644 --- a/Makefile