Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 98947 - New package: javasvn- (ebuild included)
Summary: New package: javasvn- (ebuild included)
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Development (show other bugs)
Hardware: All Linux
: High enhancement (vote)
Assignee: Java team
Keywords: EBUILD
Depends on: 99245
Blocks: 98948
  Show dependency tree
Reported: 2005-07-13 19:11 UTC by James Le Cuirot
Modified: 2015-01-25 11:23 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---

javasvn- (javasvn-,656 bytes, text/plain)
2005-07-13 19:12 UTC, James Le Cuirot
build_xml.patch (build_xml.patch,1.43 KB, patch)
2005-07-13 19:13 UTC, James Le Cuirot
Details | Diff
javasvn- (javasvn-,658 bytes, text/plain)
2005-07-16 04:20 UTC, James Le Cuirot
javasvn- (javasvn-,838 bytes, text/plain)
2005-07-18 10:02 UTC, James Le Cuirot

Note You need to log in before you can comment on or make changes to this bug.
Description James Le Cuirot gentoo-dev 2005-07-13 19:11:50 UTC
"JavaSVN is a pure java Subversion (SVN) client library."

This library is required by SVNClientAdapter, which is required by Subclipse, a Subversion plugin for Eclipse. I hope to provide ebuilds for these shortly. The upstream tarball contains a lot of unnecessary dependencies. I have provided a stripped down tarball here.
Comment 1 James Le Cuirot gentoo-dev 2005-07-13 19:12:09 UTC
Created attachment 63352 [details]
Comment 2 James Le Cuirot gentoo-dev 2005-07-13 19:13:15 UTC
Created attachment 63353 [details, diff]

The build.xml file has to be modified slightly because the dependencies are
being provided externally.
Comment 3 James Le Cuirot gentoo-dev 2005-07-13 19:14:30 UTC
Oh and this uses a unique license, which can be found here at...
Comment 4 Petteri Räty (RETIRED) gentoo-dev 2005-07-14 02:56:02 UTC
Use java-config --classpath=<pkg>,<pkg2> or java-pkg_jar-from to set the classpath.
Comment 5 James Le Cuirot gentoo-dev 2005-07-16 04:20:50 UTC
Created attachment 63520 [details]

I have now used java-pkg_jar-from for JSch but it doesn't work with svn-javahl
as this was not installed using dojar. This is part of the Subversion package
and that ebuild would need to be modified in order to fix this.
Comment 6 James Le Cuirot gentoo-dev 2005-07-16 05:41:18 UTC
Ah damn, wait a minute. I tried the same thing on svnclientadapter and it didn't 
compile. I then realised that it wouldn't have compiled here either but it does 
because it seems JSch is only an optional runtime dependency.

This ebuild is still okay (apart from the svn-javahl thing) but in order for me 
to do svnclientadapter, how would I get the entire classpath from the eclass 
after a series of calls to java-pkg_jar-from? I could just run java-config again 
but that seems like unnecessary work. I've looked through the eclass but I can't 
seem to find anything like java-pkg_getclasspath.
Comment 7 Petteri Räty (RETIRED) gentoo-dev 2005-07-16 06:47:04 UTC
Here's how the java ebuilds should be done:
1. delete the packed jars 
2. use ant properties to set the location of the 
   antflags="${antflags} -Dlib.location=$(java-config -classpath=<pkg>)
3. if the build.xml doesn't support these properties it is preferred to make a
patch and submit it upstream.
4. You can use java-pkg_jar-from the replace the packed jars with symlinks to
system jars, but 2 and 3 are preferred. 

You should submit a bug for Subversion if one doesn't already exist and make
this bug depend on it. All jars should be installed using java-pkg_dojar if at
all possible. 

You don't also need to install the COPYING file because it should already be in
/usr/portage/licenses. I also think you also can't have spaces in the name of
the license because spaces are used to separate multiple licenses.

If JSch is really only needed to run this, DEPEND and RDEPEND should reflect
that. It should also be under a use flag. 

Ebuilds have these many issues that can sometimes be a pain for beginners (I
know they have been for me), but don't let it beat you and keep up the good work. 
Comment 8 James Le Cuirot gentoo-dev 2005-07-16 10:14:34 UTC
I've just read through that document.

I didn't understand what java-pkg_jar-from was doing before. It makes sense now. 
The document doesn't mention the other method and if you were to use that 
method, it wouldn't put the dependency information into the package.env file 
when calling java-pkg_dojar.

There are also some inconsistencies. The document states that Javadoc stuff goes 
into /usr/share/doc/${PF}/html/api and that the java-pkg_dohtml command takes a 
list of directories. The eclass is doing neither of these things of the moment. 
What java-pkg_dohtml actually does is call dohtml and dohtml expects files, not 
directories. The -r option needs to be added for starters. dohtml also inserts 
the files into /usr/share/doc/${PF}/html and not /usr/share/doc/${PF}/html/api. 
These may be minor points but the eclasses are supposed to make life easier and 
the policies really should accurately reflect what is actually happening.

I still think there should be a function in the eclass that returns the 
classpath that has been generated from several calls to java-pkg_from-jar since 
this function is calling java-config --classpath and you'd just be calling it 

I'll file a new bug for Subversion.
Comment 9 Petteri Räty (RETIRED) gentoo-dev 2005-07-16 11:38:25 UTC
Yes, our eclasses and documentation could need some improvement. Most of these
issues should already be known to us. Our tools are under improvement by axxo at
the moment and will hit the official tree at some point. If you want to discuss
these issues further, you can come meet us at gentoo-java@freenode. I am called
Betelgeuse there. 
Comment 10 James Le Cuirot gentoo-dev 2005-07-18 10:02:38 UTC
Created attachment 63716 [details]

Assuming axxo doesn't make too many changes to his new eclass or the patch I
sent him then this ebuild should work when the new stuff comes out. It'll have
to be put on hold until then.
Comment 11 James Le Cuirot gentoo-dev 2005-07-18 10:07:32 UTC
Actually I'm wondering if jsch should be a compile-time dependency. It would 
normally only be a run-time dependency but the ebuild needs to know its location 
in order to create package.env.
Comment 12 James Le Cuirot gentoo-dev 2006-10-13 03:10:11 UTC
Closing this because it is in chewi-overlay.
Comment 13 Josh Nichols (RETIRED) gentoo-dev 2006-10-13 06:04:16 UTC
Please don't resolve until it is in the main tree.
Comment 14 Patrice Clement gentoo-dev 2015-01-25 09:20:56 UTC
This ebuild request has been reported in 2006 (!). Do we still want it added to the tree ? If someone does, please comment. Otherwise I will close this bug.

@James: you've reported this bug. Please let us know. Thanks.
Comment 15 James Le Cuirot gentoo-dev 2015-01-25 11:10:52 UTC
JavaSVN later become SVNKit. This is still maintained. We have an SVNKit ebuild in java-overlay but it's old. It is used by these projects.

Of these, I think we've only ever packaged Subclipse but that's since gone. It's an Eclipse plugin and we don't even package Eclipse any more, never mind the plugins. It wasn't a direct dependency but used svnclientadapter. See bug #98948 about that.

We would obviously like to package some of those aforementioned projects but they're not easy ones so I would probably close this as WONTFIX and remove the ebuild from java-overlay.
Comment 16 Patrice Clement gentoo-dev 2015-01-25 11:23:55 UTC
Thanks James. Closing it then.