summaryrefslogtreecommitdiff
path: root/subversion/bindings/javahl/README
diff options
context:
space:
mode:
Diffstat (limited to 'subversion/bindings/javahl/README')
-rw-r--r--subversion/bindings/javahl/README38
1 files changed, 22 insertions, 16 deletions
diff --git a/subversion/bindings/javahl/README b/subversion/bindings/javahl/README
index bcbba3f..ca7b9f4 100644
--- a/subversion/bindings/javahl/README
+++ b/subversion/bindings/javahl/README
@@ -5,7 +5,7 @@ JavaHL provides a (mostly native, using JNI and javah) implementation of
a high level Java API for Subversion, which was originally targeted for
implementors of GUI clients and IDE plug-ins for Subversion. JavaHL
currently provides a minimal-but-complete set of APIs which expose the
-core Subversion C API to Java. It requires a JRE 1.5+ (runtime).
+core Subversion C API to Java. It requires a JRE 1.6+ (runtime).
It is currently quite mature, and can be considered for production use.
@@ -13,8 +13,9 @@ It is currently quite mature, and can be considered for production use.
Build system
------------
-JavaHL should compile and run under Linux, Win32, and Mac OS X with a
-JDK 1.5+.
+JavaHL should compile and run under Linux, Win32, and Mac OS X with
+JDK 1.6+ and a C++ compiler with a complete implementation of
+C++98 (for example, GCC 3.2 and older cannot compile JavaHL 1.9+).
Its build will produce both a native library (libsvnjavahl-1.so on Unix
or libsvnjavahl-1.dll on Win32) and a platform independent archive of
@@ -22,27 +23,29 @@ Java bytecode (svn-javahl.jar).
To build JavaHL on non-Win32 platforms, just add "--enable-javahl" to
the configure script's parameters. "--with-jdk" can be provided to
-specify the path to a jdk. "--with-maintainer-mode" will compile Java
-bytecode with debugging information. Jikes will be the preferred
-compiler if it is auto-detected. If not auto-detected, you can force
-its use via the "--with-jikes=path" flag to configure.
+specify the path to a jdk. "--enable-maintainer-mode" will compile
+Java bytecode with debugging information.
The following make targets are provided:
-javahl build javahl
-install-javahl install javahl
-check-javahl run javahl tests
+javahl build JavaHL
+install-javahl install JavaHL
+check-javahl run JavaHL tests
+check-all-javahl run all JavaHL tests, including tests for
+ deprecated backward-compatibility APIs.
-(In order to run check-javahl, you must have already installed JavaHL,
-and you must have specified a path to a JUnit jar file with
---with-junit when running configure; JUnit version 3.8.1 has been
-tested. JUnit can be downloaded from http://junit.sf.net/ .)
+(In order to run check-javahl, you must have specified a path to a JUnit
+jar file with --with-junit when running configure; JUnit version 4.11
+has been tested. JUnit can be downloaded from http://junit.org/ .)
MacOS X:
-After building libsvnjavahl.dynlib, you must rename it to
-libsvnjavahl.jnilib. Additionally, it should probably be installed in
+After building libsvnjavahl.dylib, you must rename it to
+libsvnjavahl.jnilib. Make install-javahl creates a symbolic
+link with the appropriate name.
+
+Additionally, it should probably be installed in
/Library/Java/Extensions instead of wherever the build system chose to
install it; patches to our build system to do this automatically are
welcome.
@@ -61,6 +64,7 @@ Success stories
---------------
Subclipse, Eclipse IDE plug-in <http://subclipse.tigris.org/>
+SmartSVN, cross-platform Subversion client (http://www.smartsvn.com/)
Why not 100% pure Java?
@@ -87,6 +91,8 @@ as to its compatibility with the official Subversion implementation.
TODO
----
+o Transition all of the implementation to the new-style jniwrapper.
o Expose more of Subversion's core libraries through JNI.
o More JUnit test cases.
+o Refactor the JUnit tests to use the improved features of JUnit 4.
o Improve JavaDoc and coding style.