summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorruki <[email protected]>2023-01-15 22:54:26 +0800
committerruki <[email protected]>2023-01-15 22:54:26 +0800
commit9c777940028a96838fb033fb62af5d5a3b1d6aef (patch)
treee68d9dac6d42f67c5ec69b6e041989265d2d01ff
parent5334e3d218cbc3433b7dea0505337f726751ce96 (diff)
install and uninstall driver modules
-rw-r--r--xmake/rules/platform/linux/driver/driver_modules.lua8
-rw-r--r--xmake/rules/platform/linux/driver/xmake.lua7
2 files changed, 15 insertions, 0 deletions
diff --git a/xmake/rules/platform/linux/driver/driver_modules.lua b/xmake/rules/platform/linux/driver/driver_modules.lua
index e5541cb2f..09b4c72a0 100644
--- a/xmake/rules/platform/linux/driver/driver_modules.lua
+++ b/xmake/rules/platform/linux/driver/driver_modules.lua
@@ -309,3 +309,11 @@ function link(target, opt)
end, {dependfile = dependfile, lastmtime = os.mtime(target:targetfile()), files = objectfiles})
end
+
+function install(target)
+ os.vrunv("insmod", {target:targetfile()})
+end
+
+function uninstall(target)
+ os.vrunv("rmmod", {target:targetfile()})
+end
diff --git a/xmake/rules/platform/linux/driver/xmake.lua b/xmake/rules/platform/linux/driver/xmake.lua
index 8192b9a7f..297dcc83e 100644
--- a/xmake/rules/platform/linux/driver/xmake.lua
+++ b/xmake/rules/platform/linux/driver/xmake.lua
@@ -30,4 +30,11 @@ rule("platform.linux.driver")
on_link(function (target, opt)
import("driver_modules").link(target, opt)
end)
+ on_install(function (target)
+ import("driver_modules").install(target)
+ end)
+ on_uninstall(function (target)
+ import("driver_modules").uninstall(target)
+ end)
+