diff options
| author | ruki <[email protected]> | 2026-01-25 15:20:56 +0800 |
|---|---|---|
| committer | ruki <[email protected]> | 2026-01-25 15:28:26 +0800 |
| commit | 709b454524f08e7ba01f7872194fc29d3d448dec (patch) | |
| tree | de7a01a1e426c669ab1f70d3197697e2fed4d3ed | |
| parent | f4af385406eec4868b776c1fc32d7468dc303cc4 (diff) | |
fix pascal apis
| -rw-r--r-- | xmake/languages/pascal/load.lua | 13 | ||||
| -rw-r--r-- | xmake/languages/pascal/xmake.lua | 81 | ||||
| -rw-r--r-- | xmake/rules/pascal/xmake.lua | 14 |
3 files changed, 48 insertions, 60 deletions
diff --git a/xmake/languages/pascal/load.lua b/xmake/languages/pascal/load.lua index cb6c3117f..07f25e8b8 100644 --- a/xmake/languages/pascal/load.lua +++ b/xmake/languages/pascal/load.lua @@ -68,19 +68,6 @@ function _get_apis() , "toolchain.add_includedirs" , "toolchain.add_defines" , "toolchain.add_undefines" - , "toolchain.set_languages" - -- target.set_xxx - , "target.set_languages" - , "target.set_exceptions" - -- option.set_xxx - , "option.set_languages" - , "option.set_exceptions" - -- package.set_xxx - , "package.set_languages" - , "package.set_exceptions" - -- toolchain.set_xxx - , "toolchain.set_languages" - , "toolchain.set_exceptions" } apis.paths = { -- target.add_xxx diff --git a/xmake/languages/pascal/xmake.lua b/xmake/languages/pascal/xmake.lua index feafb5440..de31378af 100644 --- a/xmake/languages/pascal/xmake.lua +++ b/xmake/languages/pascal/xmake.lua @@ -33,88 +33,75 @@ language("pascal") set_nameflags { object = { "config.includedirs" + , "config.frameworkdirs" + , "config.frameworks" , "target.symbols" , "target.warnings" + , "target.fpmodels" + , "target.optimize:check" + , "target.vectorexts:check" + , "target.languages" + , "target.includedirs" , "target.defines" , "target.undefines" - , "target.includedirs" + , "target.frameworkdirs" + , "target.frameworks" , "target.exceptions" - , "target.languages" - , "target.optimize:check" - , "target.vectorexts:check" + , "target.encodings" + , "target.forceincludes" , "toolchain.includedirs" - , "toolchain.languages" , "toolchain.defines" , "toolchain.undefines" + , "toolchain.frameworkdirs" + , "toolchain.frameworks" , "toolchain.exceptions" + , "toolchain.languages" } , binary = { - "config.includedirs" - , "config.linkdirs" - , "config.frameworks" + "config.linkdirs" , "config.frameworkdirs" + , "config.frameworks" , "config.rpathdirs" , "config.syslinks" , "target.linkdirs" - , "target.rpathdirs" - , "target.syslinks" - , "target.frameworks" , "target.frameworkdirs" + , "target.rpathdirs" , "target.strip" , "target.symbols" - , "target.warnings" - , "target.defines" - , "target.undefines" - , "target.includedirs" - , "target.exceptions" - , "target.languages" , "target.optimize:check" - , "target.vectorexts:check" - , "toolchain.includedirs" - , "toolchain.languages" - , "toolchain.defines" - , "toolchain.undefines" - , "toolchain.exceptions" , "toolchain.linkdirs" , "toolchain.rpathdirs" - , "toolchain.strip" - , "toolchain.syslinks" - , "toolchain.frameworks" , "toolchain.frameworkdirs" + , "config.links" + , "target.links" + , "toolchain.links" + , "target.frameworks" + , "toolchain.frameworks" + , "target.syslinks" + , "toolchain.syslinks" } , shared = { - "config.includedirs" - , "config.linkdirs" - , "config.frameworks" + "config.linkdirs" , "config.frameworkdirs" + , "config.frameworks" , "config.rpathdirs" , "config.syslinks" , "target.linkdirs" - , "target.rpathdirs" - , "target.syslinks" - , "target.frameworks" , "target.frameworkdirs" + , "target.rpathdirs" , "target.strip" , "target.symbols" - , "target.warnings" - , "target.defines" - , "target.undefines" - , "target.includedirs" - , "target.exceptions" - , "target.languages" , "target.optimize:check" - , "target.vectorexts:check" - , "toolchain.includedirs" - , "toolchain.languages" - , "toolchain.defines" - , "toolchain.undefines" - , "toolchain.exceptions" , "toolchain.linkdirs" , "toolchain.rpathdirs" - , "toolchain.strip" - , "toolchain.syslinks" - , "toolchain.frameworks" , "toolchain.frameworkdirs" + , "config.links" + , "target.links" + , "toolchain.links" + , "target.frameworks" + , "toolchain.frameworks" + , "target.syslinks" + , "toolchain.syslinks" } } diff --git a/xmake/rules/pascal/xmake.lua b/xmake/rules/pascal/xmake.lua index 4b318702b..03b027e07 100644 --- a/xmake/rules/pascal/xmake.lua +++ b/xmake/rules/pascal/xmake.lua @@ -31,3 +31,17 @@ rule("pascal") -- inherit links and linkdirs of all dependent targets by default add_deps("utils.inherit.links") + + -- support `add_files("src/*.o")` and `add_files("src/*.a")` to merge object and archive files to target + add_deps("utils.merge.object", "utils.merge.archive") + + -- we attempt to extract symbols to the independent file and + -- strip self-target binary if `set_symbols("debug")` and `set_strip("all")` are enabled + add_deps("utils.symbols.extract") + + -- add platform rules + add_deps("platform.wasm") + add_deps("platform.windows") + + -- add linker rules + add_deps("linker") |
