Updated.
This commit is contained in:
35
readme.md
35
readme.md
@@ -1,14 +1,14 @@
|
|||||||
|
|
||||||
Provides Java bindings for various native APIs.
|
# Native-platform: Java bindings for various native APIs
|
||||||
|
|
||||||
# Available bindings
|
## Available bindings
|
||||||
|
|
||||||
## Generic
|
### Generic
|
||||||
|
|
||||||
* Get and set UNIX file mode.
|
* Get and set UNIX file mode.
|
||||||
* Get PID of current process.
|
* Get PID of current process.
|
||||||
|
|
||||||
## Terminal and console
|
### Terminal and console
|
||||||
|
|
||||||
These bindings work for both the UNIX terminal and Windows console:
|
These bindings work for both the UNIX terminal and Windows console:
|
||||||
|
|
||||||
@@ -26,38 +26,49 @@ Currently ported to OS X, Linux, Solaris and Windows. Tested on:
|
|||||||
* Solaris 11 (x86)
|
* Solaris 11 (x86)
|
||||||
* Windows 7 (amd64)
|
* Windows 7 (amd64)
|
||||||
|
|
||||||
# Building
|
## Building
|
||||||
|
|
||||||
You will need a very recent snapshot of [Gradle](http://www.gradle.org/).
|
You will need a very recent snapshot of [Gradle](http://www.gradle.org/).
|
||||||
|
|
||||||
## Ubuntu
|
### Ubuntu
|
||||||
|
|
||||||
The g++ compiler is required to build the native library. You will need to `g++` package for this. Generally this is already installed.
|
The g++ compiler is required to build the native library. You will need to `g++` package for this. Generally this is already installed.
|
||||||
|
|
||||||
You need to install the `libncurses5-dev` package to pick up the ncurses header files. Also worth installing the `ncurses-doc` package too.
|
You need to install the `libncurses5-dev` package to pick up the ncurses header files. Also worth installing the `ncurses-doc` package too.
|
||||||
|
|
||||||
## Windows
|
### Windows
|
||||||
|
|
||||||
You need to install Visual studio, and build from a Visual studio command prompt.
|
You need to install Visual studio, and build from a Visual studio command prompt.
|
||||||
|
|
||||||
## OS X
|
### OS X
|
||||||
|
|
||||||
The g++ compiler is required to build the native library. You will need to install the XCode tools for this.
|
The g++ compiler is required to build the native library. You will need to install the XCode tools for this.
|
||||||
|
|
||||||
## Solaris
|
### Solaris
|
||||||
|
|
||||||
For Solaris 11, you need to install the `development/gcc-45` and `system/header` packages.
|
For Solaris 11, you need to install the `development/gcc-45` and `system/header` packages.
|
||||||
|
|
||||||
# TODO
|
## Running
|
||||||
|
|
||||||
|
Run `gradle compileMain install` to build.
|
||||||
|
|
||||||
|
Run `./build/install/native-platform/bin/native-platform` to run test application.
|
||||||
|
|
||||||
|
## TODO
|
||||||
|
|
||||||
|
* Fix terminal detection on OS X 10.8
|
||||||
* Package up native lib into self-extracting jar.
|
* Package up native lib into self-extracting jar.
|
||||||
* Fix TERM=dumb
|
* Build 32 bit and 64 bit libraries.
|
||||||
|
* Support for cygwin terminal
|
||||||
|
* Use TERM=xtermc instead of TERM=xterm on Solaris.
|
||||||
|
* Add diagnostics for terminal.
|
||||||
* Split out separate native library for terminal handling.
|
* Split out separate native library for terminal handling.
|
||||||
|
* Version each native interface separately.
|
||||||
* String names for errno values.
|
* String names for errno values.
|
||||||
* Split into multiple projects.
|
* Split into multiple projects.
|
||||||
* Build 32 bit and 64 bit libraries.
|
|
||||||
* Test on IBM JVM.
|
* Test on IBM JVM.
|
||||||
* Convert to c.
|
* Convert to c.
|
||||||
* Thread safety.
|
* Thread safety.
|
||||||
* Windows: flush System.out or System.err on attribute change.
|
* Windows: flush System.out or System.err on attribute change.
|
||||||
* Solaris: fix unicode file name handling.
|
* Solaris: fix unicode file name handling.
|
||||||
|
* Improve error message when unsupported capability is used.
|
||||||
|
|||||||
Reference in New Issue
Block a user