* Subversion 1.2.0-rc2.

svn path=/nixpkgs/trunk/; revision=2949
This commit is contained in:
Eelco Dolstra 2005-04-29 14:32:31 +00:00
parent 01cc75d092
commit 62e3ffab1e
4 changed files with 135 additions and 0 deletions

View File

@ -0,0 +1,60 @@
buildInputs="$openssl $zlib $db4 $httpd $swig $python $j2sdk $expat $patch"
. $stdenv/setup
configureFlags="--without-gdbm --disable-static"
if test "$localServer"; then
configureFlags="--with-berkeley-db=$db4 $configureFlags"
fi
if test "$sslSupport"; then
configureFlags="--with-ssl --with-libs=$openssl $configureFlags"
fi
if test "$httpServer"; then
configureFlags="--with-apxs=$httpd/bin/apxs --with-apr=$httpd --with-apr-util=$httpd $configureFlags"
makeFlags="APACHE_LIBEXECDIR=$out/modules $makeFlags"
fi
if test -n "$pythonBindings" -o -n "$javaSwigBindings"; then
configureFlags="--with-swig=$swig $configureFlags"
fi
if test "$javahlBindings"; then
configureFlags="--enable-javahl --with-jdk=$j2sdk $configureFlags"
fi
installFlags="$makeFlags"
postInstall() {
if test "$pythonBindings"; then
make swig-py
make install-swig-py
fi
if test "$javaSwigBindings"; then
# Hack to get Java-Swig bindings to build if Python is not in
# scope (this fails because Subversion's configure script does
# something silly like `SWIG_JAVA_COMPILE="$SWIG_PY_COMPILE"').
FL1='SWIG_JAVA_COMPILE=gcc'
FL2='SWIG_JAVA_LINK=gcc -L$(SWIG_BUILD_DIR)/.libs'
make swig-java "$FL1" "$FL2"
make swig-java-api "$FL1" "$FL2"
make swig-java-java "$FL1" "$FL2"
make install-swig-java "$FL1" "$FL2"
fi
if test "$javahlBindings"; then
mkdir -p subversion/bindings/java/javahl/classes # bug fix
make javahl
make install-javahl
mkdir -p $out/share/doc/$name
$j2sdk/bin/javadoc -d $out/share/doc/$name \
-windowtitle "JavaHL Subversion Bindings" \
-link http://java.sun.com/j2se/1.4.2/docs/api/ \
subversion/bindings/java/javahl/src/org/tigris/subversion/javahl/*.java
fi
}
postInstall=postInstall
genericBuild

View File

@ -0,0 +1,46 @@
{ localServer ? false
, httpServer ? false
, sslSupport ? false
, compressionSupport ? false
, pythonBindings ? false
, javaSwigBindings ? false
, javahlBindings ? false
, stdenv, fetchurl
, openssl ? null, httpd ? null, db4 ? null, expat, swig ? null, j2sdk ? null, zlib ? null
}:
assert expat != null;
assert localServer -> db4 != null;
assert httpServer -> httpd != null && httpd.expat == expat;
assert sslSupport -> openssl != null && (httpServer -> httpd.openssl == openssl);
assert pythonBindings -> swig != null && swig.pythonSupport;
assert javaSwigBindings -> swig != null && swig.javaSupport;
assert javahlBindings -> j2sdk != null;
assert compressionSupport -> zlib != null;
stdenv.mkDerivation {
name = "subversion-1.2.0-pre-rc2";
builder = ./builder.sh;
src = fetchurl {
url = http://subversion.tigris.org/downloads/subversion-1.2.0-rc2.tar.bz2;
md5 = "342acdc60e41232ba3b686913e1cad24";
};
# This is a hopefully temporary fix for the problem that
# libsvnjavahl.so isn't linked against libstdc++, which causes
# loading the library into the JVM to fail.
patches = if javahlBindings then [./javahl.patch] else [];
openssl = if sslSupport then openssl else null;
zlib = if compressionSupport then zlib else null;
httpd = if httpServer then httpd else null;
db4 = if localServer then db4 else null;
swig = if pythonBindings || javaSwigBindings then swig else null;
python = if pythonBindings then swig.python else null;
j2sdk = if javaSwigBindings then swig.j2sdk else
if javahlBindings then j2sdk else null;
inherit expat localServer httpServer sslSupport
pythonBindings javaSwigBindings javahlBindings;
}

View File

@ -0,0 +1,20 @@
diff -rc subversion-orig/build-outputs.mk subversion-1.1.0-rc2/build-outputs.mk
*** subversion-orig/build-outputs.mk 2004-08-10 20:17:32.000000000 +0200
--- subversion-1.1.0-rc2/build-outputs.mk 2004-08-23 21:04:35.000000000 +0200
***************
*** 200,206 ****
libsvnjavahl_DEPS = subversion/bindings/java/javahl/native/BlameCallback.lo subversion/bindings/java/javahl/native/CommitMessage.lo subversion/bindings/java/javahl/native/Inputer.lo subversion/bindings/java/javahl/native/JNIByteArray.lo subversion/bindings/java/javahl/native/JNICriticalSection.lo subversion/bindings/java/javahl/native/JNIMutex.lo subversion/bindings/java/javahl/native/JNIStackElement.lo subversion/bindings/java/javahl/native/JNIStringHolder.lo subversion/bindings/java/javahl/native/JNIThreadData.lo subversion/bindings/java/javahl/native/JNIUtil.lo subversion/bindings/java/javahl/native/MessageReceiver.lo subversion/bindings/java/javahl/native/Notify.lo subversion/bindings/java/javahl/native/Outputer.lo subversion/bindings/java/javahl/native/Path.lo subversion/bindings/java/javahl/native/Pool.lo subversion/bindings/java/javahl/native/Prompter.lo subversion/bindings/java/javahl/native/Revision.lo subversion/bindings/java/javahl/native/SVNAdmin.lo subversion/bindings/java/javahl/native/SVNBase.lo subversion/bindings/java/javahl/native/SVNClient.lo subversion/bindings/java/javahl/native/Targets.lo subversion/bindings/java/javahl/native/libsvnjavahl.la.lo subversion/bindings/java/javahl/native/org_tigris_subversion_javahl_SVNAdmin.lo subversion/bindings/java/javahl/native/org_tigris_subversion_javahl_SVNClient.lo subversion/libsvn_client/libsvn_client-1.la subversion/libsvn_wc/libsvn_wc-1.la subversion/libsvn_ra/libsvn_ra-1.la subversion/libsvn_delta/libsvn_delta-1.la subversion/libsvn_subr/libsvn_subr-1.la
libsvnjavahl_OBJECTS = BlameCallback.lo CommitMessage.lo Inputer.lo JNIByteArray.lo JNICriticalSection.lo JNIMutex.lo JNIStackElement.lo JNIStringHolder.lo JNIThreadData.lo JNIUtil.lo MessageReceiver.lo Notify.lo Outputer.lo Path.lo Pool.lo Prompter.lo Revision.lo SVNAdmin.lo SVNBase.lo SVNClient.lo Targets.lo libsvnjavahl.la.lo org_tigris_subversion_javahl_SVNAdmin.lo org_tigris_subversion_javahl_SVNClient.lo
subversion/bindings/java/javahl/native/libsvnjavahl-1.la: $(libsvnjavahl_DEPS)
! cd subversion/bindings/java/javahl/native && $(LINK_JAVAHL_CXX) -o libsvnjavahl-1.la $(LT_NO_UNDEFINED) $(libsvnjavahl_OBJECTS) ../../../../../subversion/libsvn_client/libsvn_client-1.la ../../../../../subversion/libsvn_wc/libsvn_wc-1.la ../../../../../subversion/libsvn_ra/libsvn_ra-1.la ../../../../../subversion/libsvn_delta/libsvn_delta-1.la ../../../../../subversion/libsvn_subr/libsvn_subr-1.la $(SVN_APRUTIL_LIBS) $(SVN_APR_LIBS) $(NEON_LIBS) $(LIBS)
locale_DEPS = subversion/po/de.mo subversion/po/es.mo subversion/po/ja.mo subversion/po/nb.mo subversion/po/pl.mo subversion/po/sv.mo
locale: $(locale_DEPS)
--- 200,206 ----
libsvnjavahl_DEPS = subversion/bindings/java/javahl/native/BlameCallback.lo subversion/bindings/java/javahl/native/CommitMessage.lo subversion/bindings/java/javahl/native/Inputer.lo subversion/bindings/java/javahl/native/JNIByteArray.lo subversion/bindings/java/javahl/native/JNICriticalSection.lo subversion/bindings/java/javahl/native/JNIMutex.lo subversion/bindings/java/javahl/native/JNIStackElement.lo subversion/bindings/java/javahl/native/JNIStringHolder.lo subversion/bindings/java/javahl/native/JNIThreadData.lo subversion/bindings/java/javahl/native/JNIUtil.lo subversion/bindings/java/javahl/native/MessageReceiver.lo subversion/bindings/java/javahl/native/Notify.lo subversion/bindings/java/javahl/native/Outputer.lo subversion/bindings/java/javahl/native/Path.lo subversion/bindings/java/javahl/native/Pool.lo subversion/bindings/java/javahl/native/Prompter.lo subversion/bindings/java/javahl/native/Revision.lo subversion/bindings/java/javahl/native/SVNAdmin.lo subversion/bindings/java/javahl/native/SVNBase.lo subversion/bindings/java/javahl/native/SVNClient.lo subversion/bindings/java/javahl/native/Targets.lo subversion/bindings/java/javahl/native/libsvnjavahl.la.lo subversion/bindings/java/javahl/native/org_tigris_subversion_javahl_SVNAdmin.lo subversion/bindings/java/javahl/native/org_tigris_subversion_javahl_SVNClient.lo subversion/libsvn_client/libsvn_client-1.la subversion/libsvn_wc/libsvn_wc-1.la subversion/libsvn_ra/libsvn_ra-1.la subversion/libsvn_delta/libsvn_delta-1.la subversion/libsvn_subr/libsvn_subr-1.la
libsvnjavahl_OBJECTS = BlameCallback.lo CommitMessage.lo Inputer.lo JNIByteArray.lo JNICriticalSection.lo JNIMutex.lo JNIStackElement.lo JNIStringHolder.lo JNIThreadData.lo JNIUtil.lo MessageReceiver.lo Notify.lo Outputer.lo Path.lo Pool.lo Prompter.lo Revision.lo SVNAdmin.lo SVNBase.lo SVNClient.lo Targets.lo libsvnjavahl.la.lo org_tigris_subversion_javahl_SVNAdmin.lo org_tigris_subversion_javahl_SVNClient.lo
subversion/bindings/java/javahl/native/libsvnjavahl-1.la: $(libsvnjavahl_DEPS)
! cd subversion/bindings/java/javahl/native && $(LINK_JAVAHL_CXX) -o libsvnjavahl-1.la $(LT_NO_UNDEFINED) $(libsvnjavahl_OBJECTS) ../../../../../subversion/libsvn_client/libsvn_client-1.la ../../../../../subversion/libsvn_wc/libsvn_wc-1.la ../../../../../subversion/libsvn_ra/libsvn_ra-1.la ../../../../../subversion/libsvn_delta/libsvn_delta-1.la ../../../../../subversion/libsvn_subr/libsvn_subr-1.la $(SVN_APRUTIL_LIBS) $(SVN_APR_LIBS) $(NEON_LIBS) $(LIBS) -lstdc++
locale_DEPS = subversion/po/de.mo subversion/po/es.mo subversion/po/ja.mo subversion/po/nb.mo subversion/po/pl.mo subversion/po/sv.mo
locale: $(locale_DEPS)

View File

@ -1044,6 +1044,15 @@ rec {
httpd = apacheHttpd;
};
subversion12x = (import ../applications/version-management/subversion-1.2.x) {
inherit fetchurl stdenv openssl db4 expat swig zlib;
localServer = true;
httpServer = false;
sslSupport = true;
compressionSupport = true;
httpd = apacheHttpd;
};
subversionWithJava = (import ../applications/version-management/subversion-1.1.x) {
inherit fetchurl stdenv openssl db4 expat;
swig = swigWithJava;