Initial project skeleton.
This includes a working gyp-based build of an executable that uses LLVM.
This commit is contained in:
94
README.md
94
README.md
@@ -15,13 +15,12 @@ Coming soon (maybe):
|
||||
## Quickstart
|
||||
|
||||
git clone https://github.com/benvanik/xenia.git
|
||||
./xenia-build.sh setup
|
||||
./xenia-build.sh build
|
||||
./bin/xenia some.xex
|
||||
cd xenia && source xeniarc
|
||||
xb setup
|
||||
xb build
|
||||
./bin/xenia-run some.xex
|
||||
|
||||
## Building
|
||||
|
||||
### Requirements
|
||||
## Requirements
|
||||
|
||||
You must have a 64-bit machine for building and running the project. Always
|
||||
run your system updater before building and make sure you have the latest
|
||||
@@ -43,8 +42,85 @@ Windows SDK, the full DirectX SDK, and the Kinect SDK.
|
||||
|
||||
#### OS X
|
||||
|
||||
* [Xcode 4](http://developer.apple.com/xcode/)
|
||||
Only tested on OS X 10.8 (Mountain Lion).
|
||||
|
||||
### Dependencies
|
||||
* [Xcode 4](http://developer.apple.com/xcode/) + command line tools
|
||||
* [Homebrew](http://mxcl.github.com/homebrew/)
|
||||
|
||||
TODO
|
||||
## Building
|
||||
|
||||
A simple build script is included to manage basic tasks such as building
|
||||
dependencies.
|
||||
|
||||
./xenia-build.py --help
|
||||
|
||||
The `xeniarc` bash file has some aliases that save some keypresses.
|
||||
|
||||
source xeniarc
|
||||
xb -> python xenia-build.py
|
||||
xbb -> python xenia-build.py build
|
||||
xbc -> python xenia-build.py clean
|
||||
|
||||
### Commands
|
||||
|
||||
#### setup
|
||||
|
||||
Run this on initial checkout to pull down all dependencies and setup LLVM.
|
||||
|
||||
xb setup
|
||||
|
||||
#### pull
|
||||
|
||||
Does a `git pull` in addition to updating submodules and rebuilding dependencies
|
||||
and gyp outputs. Use this, if possible, instead of git pull.
|
||||
|
||||
xb pull
|
||||
|
||||
#### gyp
|
||||
|
||||
Updates all of the supported gyp projects. If you're using Visual Studio or
|
||||
Xcode to build or debug your projects you'll need to run this after you change
|
||||
gyp/gypi files.
|
||||
|
||||
xb gyp
|
||||
|
||||
#### build
|
||||
|
||||
Builds all xenia targets using ninja. Release is built by default; specify
|
||||
`--debug` to build the debug configuration.
|
||||
|
||||
xb build
|
||||
xb build --debug
|
||||
|
||||
#### clean
|
||||
|
||||
Cleans just xenia outputs from the build/ directory. A following build will just
|
||||
have the rebuild xenia and not all of the dependencies.
|
||||
|
||||
xb clean
|
||||
|
||||
#### nuke
|
||||
|
||||
Cleans up xenia outputs as well as all dependencies. A full build will be
|
||||
required after this - including LLVM - so only do this if you want to reclaim
|
||||
your disk space or something is really wrong.
|
||||
|
||||
xb nuke
|
||||
|
||||
## Running
|
||||
|
||||
Use the wrapper shell scripts under `bin/` to run tools. They will ensure the
|
||||
tools are built (but not that they are up to date) before running and allow
|
||||
switching between the debug and release variants with `--debug`.
|
||||
|
||||
### xenia-info
|
||||
|
||||
Dumps information about a xex file.
|
||||
|
||||
./bin/xenia-info some.xex
|
||||
|
||||
### xenia-run
|
||||
|
||||
Runs a xex.
|
||||
|
||||
./bin/xenia-run some.xex
|
||||
|
||||
Reference in New Issue
Block a user