aboutsummaryrefslogtreecommitdiff
path: root/src/README.md
diff options
context:
space:
mode:
authorruki <waruqi@gmail.com>2018-11-08 00:38:48 +0800
committerruki <waruqi@gmail.com>2018-11-07 21:53:09 +0800
commit26105034da4fcce7ac883c899d781f016559310d (patch)
treec459a5dc4e3aa0972d9919033ece511ce76dd129 /src/README.md
parent2c77f00f1a7ecb6c8192f9c16d3b2001b254a107 (diff)
downloadxmake-docs-26105034da4fcce7ac883c899d781f016559310d.tar.gz
xmake-docs-26105034da4fcce7ac883c899d781f016559310d.zip
switch to vuepress
Diffstat (limited to 'src/README.md')
-rw-r--r--src/README.md210
1 files changed, 210 insertions, 0 deletions
diff --git a/src/README.md b/src/README.md
new file mode 100644
index 00000000..e013cf86
--- /dev/null
+++ b/src/README.md
@@ -0,0 +1,210 @@
+---
+home: true
+heroImage: /hero.png
+actionText: Get Started →
+actionLink: /guide/getting-started
+features:
+ - title: Why
+ details: Making development and building easier, so that any developer can quickly pick it up and enjoy the productivity boost when developing and building project.
+ - title: Powerful
+ details: Provides lots of features (e.g. package, install, plugin, macro, action, option, task and etc).
+ - title: Cross-platform
+ details: Supports windows, macOS, linux, android, ios.
+footer: Apache-2.0 Licensed | Copyright © 2015-present tboox.org
+---
+
+## Simple description
+
+<img src="https://xmake.io/assets/img/index/showcode1.png" width="40%" />
+
+## Package dependences
+
+<img src="https://xmake.io/assets/img/index/add_require.png" width="70%" />
+
+An official xmake package repository: [xmake-repo](https://github.com/tboox/xmake-repo)
+
+## Build project
+
+```bash
+$ xmake
+```
+
+## Run target
+
+```bash
+$ xmake run console
+```
+
+## Debug target
+
+```bash
+$ xmake run -d console
+```
+
+## Configure platform
+
+```bash
+$ xmake f -p [windows|linux|macosx|android|iphoneos ..] -a [x86|arm64 ..] -m [debug|release]
+$ xmake
+```
+
+## Menu configuration
+
+```bash
+$ xmake f --menu
+```
+
+<img src="https://xmake.io/assets/img/index/menuconf.png" width="80%" />
+
+## Package management
+
+<img src="https://xmake.io/assets/img/index/package_manage.png" width="80%" />
+
+## Supported platforms
+
+* Windows (x86, x64)
+* macOS (i386, x86_64)
+* Linux (i386, x86_64, cross-toolchains ...)
+* Android (armv5te, armv6, armv7-a, armv8-a, arm64-v8a)
+* iOS (armv7, armv7s, arm64, i386, x86_64)
+* WatchOS (armv7k, i386)
+* MinGW (i386, x86_64)
+
+## Supported Languages
+
+* C
+* C++
+* Objective-C and Objective-C++
+* Swift
+* Assembly
+* Golang
+* Rust
+* Dlang
+* Cuda
+
+## Supported Projects
+
+* Static Library
+* Shared Library
+* Console
+* Cuda Program
+* Qt Application
+* WDK Driver (umdf/kmdf/wdm)
+* WinSDK Application
+
+## Builtin Plugins
+
+#### Macros script plugin
+
+```bash
+$ xmake m -b # start to record
+$ xmake f -p iphoneos -m debug
+$ xmake
+$ xmake f -p android --ndk=~/files/android-ndk-r16b
+$ xmake
+$ xmake m -e # stop to record
+$ xmake m . # playback commands
+```
+
+#### Run the custom lua script plugin
+
+```bash
+$ xmake l ./test.lua
+$ xmake l -c "print('hello xmake!')"
+$ xmake l lib.detect.find_tool gcc
+```
+
+#### Generate IDE project file plugin(makefile, vs2002 - vs2017 .. )
+
+```bash
+$ xmake project -k vs2017 -m "debug,release"
+```
+
+#### Generate doxygen document plugin
+
+```bash
+$ xmake doxygen [srcdir]
+```
+
+## More Plugins
+
+Please download and install from the plugins repository [xmake-plugins](https://github.com/tboox/xmake-plugins).
+
+## IDE/Editor Integration
+
+* [xmake-vscode](https://github.com/tboox/xmake-vscode)
+
+<img src="https://raw.githubusercontent.com/tboox/xmake-vscode/master/res/problem.gif" width="60%" />
+
+* [xmake-sublime](https://github.com/tboox/xmake-sublime)
+
+<img src="https://raw.githubusercontent.com/tboox/xmake-sublime/master/res/problem.gif" width="60%" />
+
+* [xmake-idea](https://github.com/tboox/xmake-idea)
+
+<img src="https://raw.githubusercontent.com/tboox/xmake-idea/master/res/problem.gif" width="60%" />
+
+* [xmake.vim](https://github.com/luzhlon/xmake.vim) (third-party, thanks [@luzhlon](https://github.com/luzhlon))
+
+## More Examples
+
+Debug and release modes:
+
+```lua
+add_rules("mode.debug", "mode.release")
+
+target("console")
+ set_kind("binary")
+ add_files("src/*.c")
+ if is_plat("windows", "mingw") then
+ add_defines("XXX")
+ end
+```
+
+Custom script:
+
+```lua
+target("test")
+ set_kind("static")
+ add_files("src/*.cpp")
+ after_build(function (target)
+ print("build %s ok!", target:targetfile())
+ end)
+```
+
+Extension Modules:
+
+```lua
+target("test")
+ set_kind("shared")
+ add_files("src/*.c")
+ on_load(function (target)
+ import("lib.detect.find_package")
+ target:add(find_package("zlib"))
+ end)
+```
+
+## Project Examples
+
+Some projects using xmake:
+
+* [tbox](https://github.com/tboox/tbox)
+* [gbox](https://github.com/tboox/gbox)
+* [vm86](https://github.com/tboox/vm86)
+* [more](https://github.com/tboox/awesome-xmake)
+
+## Example Video
+
+<a href="https://asciinema.org/a/133693">
+<img src="https://asciinema.org/a/133693.png" width="60%" />
+</a>
+
+## Contacts
+
+* Email:[waruqi@gmail.com](mailto:waruqi@gmail.com)
+* Homepage:[tboox.org](http://www.tboox.org)
+* Community:[/r/tboox on reddit](https://www.reddit.com/r/tboox/)
+* ChatRoom:[Char on telegram](https://t.me/tbooxorg), [Chat on gitter](https://gitter.im/tboox/tboox?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
+* Source Code:[Github](https://github.com/tboox/xmake), [Gitee](https://gitee.com/tboox/xmake)
+
+