Hi
On Wed, 6 Apr 2005 02:46 am, Russel Winder wrote:
> On Tue, 2005-04-05 at 08:17 -0700, Bill Wohler wrote:
> > Conversely, if JavaHL doesn't work for you, use JavaSVN ;-).
> >
> > That was my case on Linux. After struggling to doctor the Debian
> > source distribution to give me a JavaHL library, I punted and pointed
> > Eclipse to JavaSVN and was up and running in moments.
>
> I too am using Debian GNU/Linux and came to the conclusion that to use
> JavaHL I would end up having to download entire the Subversion source
> and get involved in lots of compiling. I ran away from doing that,
> downloaded JavaSVN and, like you, was up and running in just a few
> minutes.
(Edit: note that the following applies to the Debian testing and unstable
distributions. Subversion is not part of the Debian stable distribution.
How to rebuild on stable will depend on how subversion was
packaged/installed.)
Building JavaHL on Debian is not hard. Debian's subversion was patched to
facilitate easy rebuilding with JavaHL (i). It's just a matter of knowing
what to do. ;) (and that Kaffe is currently unable to build JavaHL)
The following assumes you already have a JDK installed. if not use
java-package to install one. (I use Sun 1.4.2 jdk. IBM or Blackdown jdks
should also work. Kaffe and Sablevm use jikes 1.22 which does not work).
1. install build-essential packages.
install subversion build dependencies (ii).
(as root) # apt-get install build-essential fakeroot devscripts
# apt-get build-dep subversion
2. get and unpack the source
$ apt-get source subversion
3. cd into the subversion-<version> directory
$ cd subversion-1.1.3
4. edit the changelog (this will change the version numbers in debian
packages). choosing the right version number is important. otherwise
aptitude/dselect/apt-get upgrade will be always trying upgrade your packages
when it shouldn't or not not trying to upgrade when it should (security
updates, new upstream version). we need to use a version number which is
greater than the version number already in the archives yet which is less
than the any number the security team is likely to use. I'm using javahl
appended to the existing version number. (check with dpkg --compare-versions
if unsure of ordering).
$ dch -v <debian_version_number>javahl
eg dch -v 1.1.3-3javahl
5. edit debian/rules to enable building of JavaHL; and to tell subversion
which jdk to use
$ vi debian/rules
change line 4 ENABLE_JAVAHL=no
to ENABLE_JAVAHL=yes
change line 37 ... --with-jdk=/usr/lib/kaffe
to ... --with-jdk=<path_to_your_jdk>
eg ... --with-jdk=/usr/lib/j2sdk1.4-sun
6. debian builds the packages listed in debian/control. now we need to add
javahl to debian/control (otherwise the deb wont get built). luckily
debian/rules includes a make target to generate debian/control.
$ rm debian/control
$ debian/rules debian/control
7. build the debs.
$ dpkg-buildpackage -rfakeroot -us -uc
8. install the just built debs.
(as root) # dpgk -i ../libsvn-javahl_*.deb
I normally install all the just built debs with
(as root) # dpgk -i ../*.deb
notes:
(i) Debian's subversion packaging was patched to enable building JavaHL with
Kaffe (using Kaffe's kjc compiler). Unfortunately due to a licensing issue
Kaffe replaced the kjc compiler with Jikes version 1.22. Jikes version 1.22
will not compile JavaHL.
(ii) build deps may not always be available for a package in testing.
(sometimes for unstable too). If you run testing you may need to install
build deps from unstable.
Cheers
--
Andrew V.
Received on Wed Apr 6 06:48:57 2005