Skip to content

Commit

Permalink
Update the readme file for the 0.1.0 release.
Browse files Browse the repository at this point in the history
  • Loading branch information
jacob-carlborg committed Nov 10, 2013
1 parent a5f712a commit e576177
Showing 1 changed file with 22 additions and 29 deletions.
51 changes: 22 additions & 29 deletions README.markdown
Original file line number Diff line number Diff line change
@@ -1,12 +1,11 @@
## Introduction
# DStep

DStep is a tool for translating C and Objective-C headers to D modules.

## Download

Pre compiled binaries are available for Mac OS X and Linux 32bit.

https://github.com/jacob-carlborg/dstep/downloads
Pre-compiled binaries are available for Mac OS X, Linux and FreeBSD. As 32 and 64bit. See the
[releases](https://github.com/jacob-carlborg/dstep/releases) section.

## License

Expand All @@ -16,14 +15,13 @@ The source code is available under the [Boost Software License 1.0](http://www.b

### Requirements

* Clang - http://clang.llvm.org - 3.1
* DVM - https://bitbucket.org/doob/dvm
* DMD - 2.063.2 - install using DVM
* Tango - https://github.com/SiegeLord/Tango-D2
* libclang - [http://clang.llvm.org](http://clang.llvm.org) - 3.1 or later
* DMD - [http://dlang.org/download.html](http://dlang.org/download.html) - 2.063.2 - 2.064.2
* Tango - [https://github.com/SiegeLord/Tango-D2](https://github.com/SiegeLord/Tango-D2)

### Building

1. Install all requirements, see below
1. Install all requirements, see [below](#requirements)
2. Clone the repository by running:

$ git clone --recursive git://github.com/jacob-carlborg/dstep.git
Expand All @@ -38,42 +36,37 @@ For translating Objective-C headers add the `-ObjC` flag.

$ dstep Foo.h -o Foo.d -ObjC

Any flags recognized by Clang can be used.
Use `-h` for usage information. Any flags recognized by Clang can be used.

## <a id="requirements"></a>Requirements

## Install Requirements
### <a id="libclang"></a>libclang

These are install instructions for Mac OS X 10.7 and later. It should be easy to modify to work on other
Posix platforms.
This tool requires libclang. Any version that is 3.1 or later and binary compatible with 3.1
should work. Either download the pre-compatible libraries from the LLVM site or use libclang
shipping with your system or available from the system package manager.

### LLVM and Clang
Some header files will require "stdarg.h" and/or "stddef.h". These are so called builtin
includes and are shipped with Clang. They need to be placed in the standard header locations
or explicitly referenced with the `-I` flag. For more information see the
[Clang FAQ](http://clang.llvm.org/docs/FAQ.html#i-get-errors-about-some-headers-being-missing-stddef-h-stdarg-h).

Download the pre-compiled libraries here:

[http://llvm.org/releases/download.html#3.1](http://llvm.org/releases/download.html#3.1)

Or compile them yourself:
Alternatively compile libclang yourself:

$ git clone http://llvm.org/git/llvm.git
$ cd llvm
$ git co -b release_31
$ git checkout release_31
$ cd tools
$ git clone http://llvm.org/git/clang.git
$ cd clang
$ git co -b release_31
$ git checkout release_31
$ cd ../..
$ ./configure --enable-optimized
$ cp Release+Asserts/lib/libclang.dylib <path/to/dstep>

### DVM

$ wget -O dvm https://github.com/downloads/jacob-carlborg/dvm/dvm-0.4.1-osx
$ chmod +x dvm
$ ./dvm install dvm

### DMD

$ dvm install 2.063.2
$ dvm use 2.063.2
$ cp Release+Asserts/lib/libclang.<dylib|so> <path/to/dstep>

### Tango

Expand Down

0 comments on commit e576177

Please sign in to comment.