summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorruki <[email protected]>2017-03-24 08:54:56 +0800
committerruki <[email protected]>2017-03-24 08:54:56 +0800
commit7cc60595ace510fb0b81a18971f6774470afc7f8 (patch)
tree669c9103ec8a76d6ccc351f6ddf74e7c4f3575d1
parent709edb9091fa4de947c59a937793a4e545285985 (diff)
modify README
-rwxr-xr-xREADME.md109
-rwxr-xr-xREADME_zh.md132
2 files changed, 106 insertions, 135 deletions
diff --git a/README.md b/README.md
index d50013d9b..543390c65 100755
--- a/README.md
+++ b/README.md
@@ -15,69 +15,70 @@ If you want to known more, please refer to:
* [Github](https://github.com/waruqi/xmake)
* [HomePage](http://www.xmake.io)
-#### Features
+## Simple description
-- Create projects and supports many project templates
-- Support c/c++, objc/c++, swift and assembly language
-- Automatically probe the host environment and configure project
-- Provide some built-in actions (config, build, package, clean, install, uninstall and run)
-- Provide some built-in plugins (doxygen, macro, project)
-- Provide some built-in macros (batch packaging)
-- Describe the project file using lua script, more flexible and simple
-- Custom packages, platforms, plugins, templates, tasks, macros, options and actions
-- Do not generate makefile and build project directly
-- Support multitasking with argument: -j
-- Check includes dependence automatically
-- Run and debug the target program
-- Generate IDE project file
+```lua
+target("console")
+ set_kind("binary")
+ add_files("src/*.c")
+```
+
+## Build project
-#### Actions
+```bash
+$ xmake
+```
-- config: Configure project before building.
-- global: Configure the global options for xmake.
-- build: Build project.
-- clean: Remove all binary and temporary files.
-- create: Create a new project using template.
-- package: Package the given target
-- install: Install the project binary files.
-- uninstall: Uninstall the project binary files.
-- run: Run the project target.
+## Run target
+
+```bash
+$ xmake run console
+```
+
+## Debug target
+
+```bash
+$ xmake run -d console
+```
-#### Plugins
+## Support features
-- The doxygen plugin: Make doxygen document from source codes
-- The macro plugin: Record and playback commands
-- The hello plugin: A simple plugin demo to show 'hello xmake!'
-- The project plugin: Create the project file for IDE (.e.g makefile, vs2002 - vs2017)
+* Tasks
+* Macros
+* Actions
+* Options
+* Plugins
+* Templates
-#### Languages
+## Support platforms
-- C/C++
-- Objc/Objc++
-- Swift
-- Assembly
-- Golang
-- Rust
-- Dlang
+* Windows (x86, x64, amd64, x86_amd64)
+* Macosx (i386, x86_64)
+* Linux (i386, x86_64, cross-toolchains ...)
+* Android (armv5te, armv6, armv7-a, armv8-a, arm64-v8a)
+* iPhoneOS (armv7, armv7s, arm64, i386, x86_64)
+* WatchOS (armv7k, i386)
+* Mingw (i386, x86_64)
-#### Platforms
+## Support Languages
-- Windows (x86, x64, amd64, x86_amd64)
-- Macosx (i386, x86_64)
-- Linux (i386, x86_64, cross-toolchains ...)
-- Android (armv5te, armv6, armv7-a, armv8-a, arm64-v8a)
-- iPhoneos (armv7, armv7s, arm64, i386, x86_64)
-- Watchos (armv7k, i386)
-- Mingw (i386, x86_64)
+* C/C++
+* Objc/Objc++
+* Swift
+* Assembly
+* Golang
+* Rust
+* Dlang
-#### Todolist
+## Builtin Plugins
-- Manage package and dependencies
-- Download package automatically
-- Create package repository for porting other third-party source codes, it's goal is that one people port it and many people shared.
-- Implement more plugins(.e.g generate .deb, .rpm package)
+* Macros script plugin
+* Run the custom lua script plugin
+* Generate IDE project file plugin(makefile, vs2002 - vs2017 .. )
+* Generate doxygen document plugin
+* Convert .app to .ipa plugin
-#### Examples
+## Examples
[![usage_demo](http://tboox.org/static/img/xmake/usage_demo.gif)](http://www.xmake.io)
@@ -213,12 +214,12 @@ target("test")
If you want to know more, please refer to:
-#### Documents
+## Documents
* [Documents](https://github.com/waruqi/xmake/wiki/documents)
* [Codes](https://github.com/waruqi/xmake)
-#### Projects
+## Projects
Some projects using xmake:
@@ -227,7 +228,7 @@ Some projects using xmake:
* [libsvx](https://github.com/caikelun/libsvx)
* [more](https://github.com/waruqi/xmake/wiki/xmake-projects)
-#### Contacts
+## Contacts
* Homepage:[TBOOX Open Source Project](http://www.tboox.org/cn)
diff --git a/README_zh.md b/README_zh.md
index 19efdcb2b..c8c2044c2 100755
--- a/README_zh.md
+++ b/README_zh.md
@@ -21,100 +21,70 @@ xmake的目标是开发者更加关注于项目本身开发,简化项目的描
* [在线源码](https://github.com/waruqi/xmake)
* [项目主页](http://www.xmake.io/cn)
-#### 支持特性
+## 简单的工程描述
-- 支持windows、mac、linux、ios、android等平台,自动检测不同平台上的编译工具链(也可手动配置)
- 编译windows项目采用原生vs的工具链,不需要使用cygwin、mingw(当然这些也支持)
-
-- 支持自定义平台编译配置,可以很方便的扩展第三方平台支持
-
-- 采用lua脚本语法描述项目,描述规则简单高效,逻辑规则可灵活修改,并且不会生成相关平台的工程文件,是工程更加简单明了
-
-- 支持创建模板工程、配置项目、编译项目、运行、打包、安装和卸载等常用功能(后续还会增加:自动生成文档、调试等模块)
-
-- 支持编译c/c++/objc/swift成静态库、动态库、命令行可执行程序
-
-- 提供丰富的工程描述api,使用简单灵活,例如添加编译文件只需(还支持过滤排除):
-
- `add_files("src/*.c", "src/asm/**.S", "src/*.m")`
-
-- 支持头文件、接口、链接库依赖、类型的自动检测,并可自动生成配置头文件config.h
-
-- 支持自定义编译配置开关,例如如果在工程描述文件中增加了`enable_xxx`的开关,那么配置编译的时候就可以手动进行配置来启用它:
-
- `xmake config --enable_xxx=y`
-
-- 提供一键打包功能,不管在哪个平台上进行打包,都只需要执行一条相同的命令,非常的方便
-
-- 支持全局配置,一些常用的项目配置,例如工具链、规则描述等等,都可以进行全局配置,这样就不需要每次编译不同工程,都去配置一遍
-
-- 除了可以自动检测依赖模块,也支持手动强制配置模块,还有各种编译flags。
-
-- 支持插件扩展、平台扩展、模板扩展、选项自定义等高级功能
-
-- 提供一些内置的常用插件(例如:自动生成doxygen文档插件,宏脚本记录和运行插件)
-
-- 宏记录插件里面提供了一些内置的宏脚本(例如:批量打包一个平台的所有archs等),也可以在命令行中手动记录宏并回放执行
-
-- 提供强大的task任务机制
-
-- 不依赖makefile和make,实现直接编译,内置自动多任务加速编译, xmake是一个真正的构架工具,而不仅仅是一个工程文件生成器
+```lua
+target("console")
+ set_kind("binary")
+ add_files("src/*.c")
+```
-- 自动检测ccache,进行自动缓存提升构建速度
+## 构建工程
-- 自动检测头文件依赖,并且快速自动构建修改的文件
+```bash
+$ xmake
+```
-- 调试器支持,实现直接加载运行调试
+## 运行目标
-- 提供产生IDE工程文件的插件(支持vs2002 - vs2017)
+```bash
+$ xmake run console
+```
-#### 常用Actions
+## 调试程序
-- config: 构建之前的编译参数配置
-- global: 配置一些全局参数
-- build: 构建项目
-- clean: 清理一些二进制文件、临时文件
-- create: 使用模板创建新工程
-- package: 打包指定目标
-- install: 安装编译后的目标文件
-- uninstall: 卸载安装的所有文件
-- run: 运行可执行的项目目标
+```bash
+$ xmake run -d console
+```
-#### 一些内置插件
+## 支持特性
-- doxygen文档生成插件: 从指定源码目录生成doxygen文档
-- 宏记录脚本插件: 记录和回放宏脚本,简化重复的命令操作(例如:批量打包。。)
-- hello插件: 插件开发demo
-- 工程文件生成插件: 创建IDE的工程文件 (目前支持:makefile, vs2002 - vs2017,后续支持:xcode等等)
-- iOS app2ipa插件
+* Tasks
+* Macros
+* Actions
+* Options
+* Plugins
+* Templates
-#### 支持编译语言
+## 支持平台
-- C/C++
-- Objc/Objc++
-- Swift
-- Assembly
-- Golang
-- Rust
-- Dlang
+* Windows (x86, x64, amd64, x86_amd64)
+* Macosx (i386, x86_64)
+* Linux (i386, x86_64, cross-toolchains ...)
+* Android (armv5te, armv6, armv7-a, armv8-a, arm64-v8a)
+* iPhoneOS (armv7, armv7s, arm64, i386, x86_64)
+* WatchOS (armv7k, i386)
+* Mingw (i386, x86_64)
-#### 支持的构建平台
+## 支持语言
-- Windows (x86, x64, amd64, x86_amd64)
-- Macosx (i386, x86_64)
-- Linux (i386, x86_64, cross-toolchains ...)
-- Android (armv5te, armv6, armv7-a, armv8-a, arm64-v8a)
-- iPhoneos (armv7, armv7s, arm64, i386, x86_64)
-- Watchos (armv7k, i386)
-- Mingw (i386, x86_64)
+* C/C++
+* Objc/Objc++
+* Swift
+* Assembly
+* Golang
+* Rust
+* Dlang
-#### 后续任务
+## 内置插件
-- 自动包依赖管理和下载
-- 创建移植仓库,实现`一人移植,多人共享`
-- 更多的插件开发(例如:Xcode工程生成,生成.deb, .rpm的安装包)
+* 宏记录脚本和回放插件
+* 加载自定义lua脚本插件
+* 生成IDE工程文件插件(makefile, vs2002 - vs2017, ...)
+* 生成doxygen文档插件
+* iOS app2ipa插件
-#### 简单例子
+## 简单例子
[![usage_demo](http://tboox.org/static/img/xmake/usage_demo.gif)](http://www.xmake.io/cn)
@@ -212,14 +182,14 @@ or xmake macro --help
...
```
-#### 一些使用xmake的项目:
+## 一些使用xmake的项目:
* [tbox](https://github.com/waruqi/tbox)
* [gbox](https://github.com/waruqi/gbox)
* [libsvx](https://github.com/caikelun/libsvx)
* [更多项目](https://github.com/waruqi/xmake/wiki/%E4%BD%BF%E7%94%A8xmake%E7%9A%84%E5%BC%80%E6%BA%90%E5%BA%93)
-#### 简单例子
+## 简单例子
```c
-- the debug mode
@@ -255,7 +225,7 @@ target("test")
add_files("src/*.c")
```
-#### 联系方式
+## 联系方式
* 主页:[TBOOX开源工程](http://www.tboox.org/cn)