build: Add libcemuextend dependency

This commit is contained in:
fooly 2026-07-15 20:12:07 +09:00
parent 9821690c8a
commit f613dc6b22
5 changed files with 37 additions and 1 deletions

3
.gitmodules vendored
View File

@ -25,3 +25,6 @@
[submodule "dependencies/xbyak_aarch64"]
path = dependencies/xbyak_aarch64
url = https://github.com/fujitsu/xbyak_aarch64
[submodule "dependencies/libcemuextend"]
path = dependencies/libcemuextend
url = ../libcemuextend.git

View File

@ -268,4 +268,6 @@ if (NOT ZArchive_FOUND)
add_subdirectory("dependencies/ZArchive" EXCLUDE_FROM_ALL)
endif()
add_subdirectory("dependencies/libcemuextend" EXCLUDE_FROM_ALL)
add_subdirectory(src)

1
dependencies/libcemuextend vendored Submodule

@ -0,0 +1 @@
Subproject commit 83729235e892ae93d7780eff2d46cfd55114dbe2

View File

@ -17,6 +17,23 @@
"type": "github"
}
},
"libcemuextend-src": {
"flake": false,
"locked": {
"lastModified": 1784098240,
"narHash": "sha256-fvXW5/AQDctX/20x4xDfYzsW5wnzNPlqT8sheP0vORI=",
"ref": "refs/heads/main",
"rev": "83729235e892ae93d7780eff2d46cfd55114dbe2",
"revCount": 6,
"type": "git",
"url": "https://github.com/fooly9858/libcemuextend.git"
},
"original": {
"rev": "83729235e892ae93d7780eff2d46cfd55114dbe2",
"type": "git",
"url": "https://github.com/fooly9858/libcemuextend.git"
}
},
"nixpkgs": {
"locked": {
"lastModified": 1783856661,
@ -36,6 +53,7 @@
"root": {
"inputs": {
"imgui-src": "imgui-src",
"libcemuextend-src": "libcemuextend-src",
"nixpkgs": "nixpkgs"
}
}

View File

@ -11,6 +11,14 @@
url = "github:ocornut/imgui/v1.91.3";
flake = false;
};
# Git flakes do not copy an initialized submodule worktree into the Nix
# source automatically. Fetch the public repository at the same immutable
# revision as the submodule so standalone/clean CemuExtend clones work.
libcemuextend-src = {
url = "git+https://github.com/fooly9858/libcemuextend.git?rev=83729235e892ae93d7780eff2d46cfd55114dbe2";
flake = false;
};
};
outputs =
@ -18,6 +26,7 @@
self,
nixpkgs,
imgui-src,
libcemuextend-src,
...
}:
let
@ -38,6 +47,7 @@
./dependencies/DirectX_2010
./dependencies/gamemode
./dependencies/ih264d
(lib.fileset.maybeMissing ./dependencies/libcemuextend)
./dist
./src
];
@ -126,9 +136,11 @@
'';
preConfigure = ''
rm -rf dependencies/imgui dependencies/Vulkan-Headers
rm -rf dependencies/imgui dependencies/Vulkan-Headers dependencies/libcemuextend
ln -s ${imgui-src} dependencies/imgui
ln -s ${pkgs.vulkan-headers} dependencies/Vulkan-Headers
cp -r ${libcemuextend-src} dependencies/libcemuextend
chmod -R u+w dependencies/libcemuextend
substituteInPlace dependencies/gamemode/lib/gamemode_client.h \
--replace-fail "libgamemode.so.0" \