aboutsummaryrefslogtreecommitdiff
path: root/zh
diff options
context:
space:
mode:
authorruki <waruqi@gmail.com>2017-10-13 23:33:20 +0800
committerruki <waruqi@gmail.com>2017-10-13 15:20:00 +0800
commitda98f581361164abedb442dfae04b56802b0c394 (patch)
treed411fbf88be95e0fddcd1409e2642de70fb336e5 /zh
parentc0a1f68b6fe382386d069e4059a2cfe1f34221e9 (diff)
downloadxmake-docs-da98f581361164abedb442dfae04b56802b0c394.tar.gz
xmake-docs-da98f581361164abedb442dfae04b56802b0c394.zip
update find_program doc
Diffstat (limited to 'zh')
-rw-r--r--zh/README.md40
-rw-r--r--zh/manual.md18
2 files changed, 50 insertions, 8 deletions
diff --git a/zh/README.md b/zh/README.md
index 2c194986..ffbc6c0e 100644
--- a/zh/README.md
+++ b/zh/README.md
@@ -280,6 +280,46 @@ hello`main:
你也可以使用简写的命令行选项,例如: `xmake r` 或者 `xmake run`
</p>
+## 工程实例
+
+#### 可执行程序
+
+```lua
+target("test")
+ set_kind("binary")
+ add_files("src/*c")
+```
+
+#### 静态库程序
+
+```lua
+target("library")
+ set_kind("static")
+ add_files("src/library/*.c")
+
+target("test")
+ set_kind("binary")
+ add_files("src/*c")
+ add_deps("library")
+```
+
+通过`add_deps`将一个静态库自动链接到test可执行程序。
+
+#### 动态库程序
+
+```lua
+target("library")
+ set_kind("shared")
+ add_files("src/library/*.c")
+
+target("test")
+ set_kind("binary")
+ add_files("src/*c")
+ add_deps("library")
+```
+
+通过`add_deps`将一个动态库自动链接到test可执行程序。
+
## 配置
通过`xmake f|config`配置命令,设置构建前的相关配置信息,详细参数选项,请运行: `xmake f --help`。
diff --git a/zh/manual.md b/zh/manual.md
index f73bb288..5ea4a78e 100644
--- a/zh/manual.md
+++ b/zh/manual.md
@@ -4035,6 +4035,8 @@ $ export COLORTERM=truecolor
$ xmake --version
```
+2.1.7版本可通过`COLORTERM=nocolor`来禁用色彩输出。
+
##### cprintf
###### 无换行彩色打印终端日志
@@ -6109,7 +6111,7 @@ local program = find_program("ccache")
指定搜索目录,修改尝试运行的检测命令参数(默认是:`ccache --version`):
```lua
-local program = find_program("ccache", {"/usr/bin", "/usr/local/bin"}, "--help")
+local program = find_program("ccache", {pathes = {"/usr/bin", "/usr/local/bin"}, check = "--help"})
```
上述代码会尝试运行:`/usr/bin/ccache --help`,如果运行成功,则返回:`/usr/bin/ccache`。
@@ -6117,14 +6119,14 @@ local program = find_program("ccache", {"/usr/bin", "/usr/local/bin"}, "--help")
如果`--help`也没法满足需求,有些程序没有`--version/--help`参数,那么可以自定义运行脚本,来运行检测:
```lua
-local program = find_program("ccache", {"/usr/bin", "/usr/local/bin"}, function (program) os.run("%s -h", program) end)
+local program = find_program("ccache", {pathes = {"/usr/bin", "/usr/local/bin"}, check = function (program) os.run("%s -h", program) end})
```
同样,搜索路径列表支持内建变量和自定义脚本:
```lua
-local program = find_program("ccache", {"$(env PATH)", "$(reg HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\\AeDebug;Debugger)"})
-local program = find_program("ccache", {"$(env PATH)", function () return "/usr/local/bin" end})
+local program = find_program("ccache", {pathes = {"$(env PATH)", "$(reg HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\\AeDebug;Debugger)"}})
+local program = find_program("ccache", {pathes = {"$(env PATH)", function () return "/usr/local/bin" end}})
```
<p class="tip">
@@ -6150,20 +6152,20 @@ local programver = find_programver("ccache")
默认它会通过`ccache --version`尝试获取版本,如果不存在此参数,可以自己指定其他参数:
```lua
-local version = find_programver("ccache", "-v")
+local version = find_programver("ccache", {command = "-v"})
```
甚至自定义版本获取脚本:
```lua
-local version = find_programver("ccache", function () return os.iorun("ccache --version") end)
+local version = find_programver("ccache", {command = function () return os.iorun("ccache --version") end})
```
对于版本号的提取规则,如果内置的匹配模式不满足要求,也可以自定义:
```lua
-local version = find_programver("ccache", "--version", "(%d+%.?%d*%.?%d*.-)%s")
-local version = find_programver("ccache", "--version", function (output) return output:match("(%d+%.?%d*%.?%d*.-)%s") end)
+local version = find_programver("ccache", {command = "--version", parse = "(%d+%.?%d*%.?%d*.-)%s"})
+local version = find_programver("ccache", {command = "--version", parse = function (output) return output:match("(%d+%.?%d*%.?%d*.-)%s") end})
```
<p class="tip">