summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorruki <[email protected]>2018-05-23 23:58:06 +0800
committerruki <[email protected]>2018-05-23 17:48:42 +0800
commitbafe3c221fb6d8659d40758116f6e148bdd83789 (patch)
tree30133aa4d589a7aaab6a48fd0c54fa8fef1c0bc5
parentabd2f0cc0aa5c9d48ce6fbb11ed57c441c0a3623 (diff)
improve sign
-rw-r--r--tests/projects/wdk/kmdf/serial/xmake.lua2
-rw-r--r--tests/projects/wdk/umdf/skeleton/xmake.lua2
-rw-r--r--tests/projects/wdk/wdm/msdsm/xmake.lua2
-rw-r--r--xmake/rules/wdk/sign/test/xmake.lua2
-rw-r--r--xmake/rules/wdk/xmake.lua21
-rw-r--r--xmake/rules/winsdk/xmake.lua12
6 files changed, 25 insertions, 16 deletions
diff --git a/tests/projects/wdk/kmdf/serial/xmake.lua b/tests/projects/wdk/kmdf/serial/xmake.lua
index 2114fdcca..09c4dfd89 100644
--- a/tests/projects/wdk/kmdf/serial/xmake.lua
+++ b/tests/projects/wdk/kmdf/serial/xmake.lua
@@ -3,7 +3,7 @@
add_rules("mode.debug", "mode.release")
-- add target
-target("serial")
+target("wdfserial")
-- add rules
add_rules("wdk.kmdf.driver", "wdk.sign.test")
diff --git a/tests/projects/wdk/umdf/skeleton/xmake.lua b/tests/projects/wdk/umdf/skeleton/xmake.lua
index e06c2ac57..0f245bcbb 100644
--- a/tests/projects/wdk/umdf/skeleton/xmake.lua
+++ b/tests/projects/wdk/umdf/skeleton/xmake.lua
@@ -6,7 +6,7 @@ add_rules("mode.debug", "mode.release")
add_defines("_UNICODE", "UNICODE")
-- add target
-target("skeleton")
+target("UMDFSkeleton")
-- add rules
add_rules("wdk.umdf.driver", "wdk.sign.test")
diff --git a/tests/projects/wdk/wdm/msdsm/xmake.lua b/tests/projects/wdk/wdm/msdsm/xmake.lua
index a30ddb29b..36f29a4fd 100644
--- a/tests/projects/wdk/wdm/msdsm/xmake.lua
+++ b/tests/projects/wdk/wdm/msdsm/xmake.lua
@@ -3,7 +3,7 @@
add_rules("mode.debug", "mode.release")
-- add target
-target("msdsm")
+target("sampledsm")
-- add rules
add_rules("wdk.wdm.driver", "wdk.sign.test")
diff --git a/xmake/rules/wdk/sign/test/xmake.lua b/xmake/rules/wdk/sign/test/xmake.lua
index 362731358..93bb7da02 100644
--- a/xmake/rules/wdk/sign/test/xmake.lua
+++ b/xmake/rules/wdk/sign/test/xmake.lua
@@ -98,7 +98,7 @@ rule("wdk.sign.test")
-- do inf2cat
local inf2cat_dir = path.directory(target:targetfile())
local inf2cat_argv = {"/driver:" .. inf2cat_dir}
- local inf2cat_os = target:values("wdk.inf2cat.os") or {"10_" .. config.arch()} -- TODO 7_, 8_ .. ?
+ local inf2cat_os = target:values("wdk.inf2cat.os") or {"XP_" .. arch, "7_" .. arch, "8_" .. arch, "10_" .. arch}
table.insert(inf2cat_argv, "/os:" .. table.concat(table.wrap(inf2cat_os), ','))
os.vrunv(inf2cat, inf2cat_argv)
diff --git a/xmake/rules/wdk/xmake.lua b/xmake/rules/wdk/xmake.lua
index 95e9b2a78..fcbb1c9cc 100644
--- a/xmake/rules/wdk/xmake.lua
+++ b/xmake/rules/wdk/xmake.lua
@@ -55,17 +55,6 @@ rule("wdk.kmdf.driver")
import("load").kmdf_driver(target)
end)
--- define rule: kmdf binary
-rule("wdk.kmdf.binary")
-
- -- add rules
- add_deps("wdk.inf", "wdk.man", "wdk.mc", "wdk.mof")
-
- -- on load
- on_load(function (target)
- import("load").kmdf_binary(target)
- end)
-
-- after build
after_build(function (target)
@@ -82,6 +71,16 @@ rule("wdk.kmdf.binary")
target:data_add("wdk.cleanfiles", os.files(path.join(target:targetdir(), "*.dll")))
end)
+-- define rule: kmdf binary
+rule("wdk.kmdf.binary")
+
+ -- add rules
+ add_deps("wdk.inf", "wdk.man", "wdk.mc", "wdk.mof")
+
+ -- on load
+ on_load(function (target)
+ import("load").kmdf_binary(target)
+ end)
-- define rule: wdm driver
rule("wdk.wdm.driver")
diff --git a/xmake/rules/winsdk/xmake.lua b/xmake/rules/winsdk/xmake.lua
index bcd17ca83..20ce411de 100644
--- a/xmake/rules/winsdk/xmake.lua
+++ b/xmake/rules/winsdk/xmake.lua
@@ -32,7 +32,17 @@ rule("win.sdk.application")
target:set("kind", "binary")
-- set subsystem: windows
- target:add("ldflags", "-subsystem:windows", {force = true})
+ local subsystem = false
+ for _, ldflag in ipairs(target:get("ldflags")) do
+ ldflag = ldflag:lower()
+ if ldflag:find("[/%-]subsystem:") then
+ subsystem = true
+ break
+ end
+ end
+ if not subsystem then
+ target:add("ldflags", "-subsystem:windows", {force = true})
+ end
-- add links
target:add("links", "kernel32", "user32", "gdi32", "winspool", "comdlg32", "advapi32")