aboutsummaryrefslogtreecommitdiff
path: root/docker
diff options
context:
space:
mode:
authorSulfurNitride <SulfurNitride@users.noreply.github.com>2026-05-08 11:06:06 -0500
committerSulfurNitride <SulfurNitride@users.noreply.github.com>2026-05-08 11:06:06 -0500
commit6391164071b859e901283bec098974ef6b104f50 (patch)
tree52ded084a17437b225382a01f1f293696de3029a /docker
parentf9fbaf60cdb8e242554227eb41b163c12591fdf2 (diff)
Add PE-side VFS bridge acceleration
Diffstat (limited to 'docker')
-rw-r--r--docker/Dockerfile3
-rwxr-xr-xdocker/build-inner.sh12
2 files changed, 15 insertions, 0 deletions
diff --git a/docker/Dockerfile b/docker/Dockerfile
index 643074c..13a67d5 100644
--- a/docker/Dockerfile
+++ b/docker/Dockerfile
@@ -38,6 +38,9 @@ RUN apt-get update && apt-get install -y --no-install-recommends \
zip unzip \
# Static analysis
clang-tidy \
+ # mingw-w64 cross-toolchain for fluorine_vfs.dll (PE-side VFS injector,
+ # loaded into Wine processes via AppInit_DLLs).
+ gcc-mingw-w64-x86-64-posix \
&& rm -rf /var/lib/apt/lists/*
# ── Qt 6.10 via aqtinstall ──
diff --git a/docker/build-inner.sh b/docker/build-inner.sh
index 24e965a..8a4f9cb 100755
--- a/docker/build-inner.sh
+++ b/docker/build-inner.sh
@@ -149,6 +149,18 @@ cp -f build/libs/uibase/src/libuibase.so "${OUT_DIR}/lib/"
cp -f build/libs/libbsarch/liblibbsarch.so "${OUT_DIR}/lib/"
cp -f build/libs/archive/src/libarchive.so "${OUT_DIR}/lib/"
cp -f build/libs/plugin_python/src/runner/librunner.so "${OUT_DIR}/lib/"
+[ -f build/src/src/libfluorine_vfs_preload.so ] && \
+ cp -f build/src/src/libfluorine_vfs_preload.so "${OUT_DIR}/lib/"
+# PE-side VFS injector: cross-built with mingw, copied into wine/ where
+# Fluorine picks it up at prefix init and stages into c:\\windows\\system32\\.
+if [ -f build/src/src/fluorine_vfs.dll ]; then
+ mkdir -p "${OUT_DIR}/wine"
+ cp -f build/src/src/fluorine_vfs.dll "${OUT_DIR}/wine/"
+fi
+if [ -f build/src/src/fluorine_vfs_hid.dll ]; then
+ mkdir -p "${OUT_DIR}/wine"
+ cp -f build/src/src/fluorine_vfs_hid.dll "${OUT_DIR}/wine/"
+fi
if [ -f "libs/bsa_ffi/target/release/libbsa_ffi.so" ]; then
cp -f libs/bsa_ffi/target/release/libbsa_ffi.so "${OUT_DIR}/lib/"
fi