On Tue, Aug 19, 2008 at 03:04:40AM +0100, peter green wrote: > It would be an issue if building with sun java6 though > [...] > I didn't just "try to" hand select them, I tested all the sun based > jre's in debian
that's what I meant by not scalable: your solution is valid at this particular point in time only, and that is why it is not very appealing to me. OTOH... > Yeah, completely ignoring the users JRE preferences is an easy fix, > I dunno if that is considered acceptable or not > [...] > So if you want functionality that is not provided by every JRE > you need to either lock to one JRE or use a selection script like the > one I wrote ... my solution is indeed more restrictive as to what JRE a Debian lambda user (that doesn't build his own package) can run azureus with. > (this is something that should probablly be centralised but that is > something to > be considered post-lenny) > [...] > And even if it didn't provide it depending on a JRE does not provide > any gaurantee that the JRE you depend on will be the JRE the > user/system select as default. I indeed do not see any obvious policy about that, and I certainly will not argue that the solution I chose to implement in this NMU should be applied to all the Debian packages that require a JRE to run. Anyway, I'm sure Shaun now has enough datapoints to decide what sort of solution he'd like to implement. I've removed all my past NMU uploads from DELAYED/7, and uploaded a single -3.1 that regroups all the fixes needed for my solution to the problem. The debdiff attached to this email represents those changes. Cheers, --Seb
reverted: --- azureus-3.1.1.0/debian/bin/azureus +++ azureus-3.1.1.0.orig/debian/bin/azureus @@ -1,7 +0,0 @@ -#!/bin/sh -JAVA='java -Xmx1024M' -. /usr/share/java-config/libswt-3.4-java -exec $JAVA -Djava.library.path=/usr/lib/jni:/usr/lib \ - -classpath /usr/share/java/Azureus2.jar:$JARS \ - -Dazureus.install.path="$HOME/.azureus" \ - org.gudy.azureus2.ui.common.Main "$@" diff -u azureus-3.1.1.0/debian/rules azureus-3.1.1.0/debian/rules --- azureus-3.1.1.0/debian/rules +++ azureus-3.1.1.0/debian/rules @@ -1,8 +1,16 @@ #!/usr/bin/make -f +SUBSTVARS := debian/azureus.substvars +BIN_FILE := debian/bin/azureus +BIN_TEMPLATE := $(BIN_FILE).template + build: dist/Azureus2.jar dist/Azureus2.jar: + dpkg -S `readlink -f $$(which java)` | perl -pe 's|(.+):.+|jre:Depends=$$1|' > $(SUBSTVARS) + perl -i -pe 's/-headless//' $(SUBSTVARS) + perl -pe "s|%JAVA%|`readlink -f $$(which java)`|" $(BIN_TEMPLATE) > $(BIN_FILE) + mkdir -p build/libs ln -s \ /usr/share/java/commons-cli.jar \ @@ -20,11 +28,10 @@ clean: dh_clean - rm -rf build/libs + rm -rf build/libs $(SUBSTVARS) $(BIN_FILE) ant clean binary-indep: build - dh_clean -k dh_install -i dh_installchangelogs -i dh_installdocs -i @@ -33,30 +40,13 @@ dh_compress -i dh_desktop -i dh_fixperms -i + dh_lintian -i dh_installdeb -i dh_gencontrol -i dh_md5sums -i dh_builddeb -i -include /usr/share/gcj/debian_defaults - -binary-arch: build - dh_clean -k - dh_install -a - dh_installchangelogs -a - dh_installdocs -a -ifneq (,$(filter $(DEB_HOST_ARCH), $(gcj_native_archs))) - dh_install -i - dh_nativejava -a -endif - dh_compress -a - dh_fixperms -a - dh_strip -a - dh_installdeb -a - dh_shlibdeps -a - dh_gencontrol -a - dh_md5sums -a - dh_builddeb -a +binary-arch: binary: binary-indep binary-arch diff -u azureus-3.1.1.0/debian/control azureus-3.1.1.0/debian/control --- azureus-3.1.1.0/debian/control +++ azureus-3.1.1.0/debian/control @@ -2,17 +2,16 @@ Section: net Priority: optional Maintainer: Shaun Jackman <[EMAIL PROTECTED]> -Build-Depends: default-jdk-builddep | java2-compiler, ant, - libcommons-cli-java, liblog4j1.2-java, libswt-gtk-3.4-java, - fastjar, junit, debhelper (>> 5) +Build-Depends: openjdk-6-jdk | java2-jdk, ant, debhelper (>= 6.0.7~) +Build-Depends-Indep: libcommons-cli-java, liblog4j1.2-java, + libswt-gtk-3.4-java, fastjar, junit Standards-Version: 3.8.0.1 Package: azureus Architecture: all -Depends: java-gcj-compat | java-virtual-machine, - java-gcj-compat | java2-runtime, libcommons-cli-java, - liblog4j1.2-java, libswt-gtk-3.4-java -Suggests: vuze, azureus-gcj +Depends: ${jre:Depends}, libcommons-cli-java, liblog4j1.2-java, + libswt-gtk-3.4-java +Suggests: vuze Description: BitTorrent client BitTorrent is a peer-to-peer file distribution tool. . @@ -21,13 +20,6 @@ access to numerous pieces of information about your torrents. Azureus now features an embedded tracker easily set up and ready to use. -Package: azureus-gcj -Architecture: any -Depends: azureus (>= ${source:Version}), azureus (<< ${source:Version}.1~), - ${misc:Depends}, ${shlibs:Depends} -Description: native binary of Azureus - This package contains a native binary of Azureus built using GCJ. - Package: vuze Architecture: all Depends: azureus, libswt-cairo-gtk-3.4-jni, libswt-gnome-gtk-3.4-jni, diff -u azureus-3.1.1.0/debian/changelog azureus-3.1.1.0/debian/changelog --- azureus-3.1.1.0/debian/changelog +++ azureus-3.1.1.0/debian/changelog @@ -1,3 +1,15 @@ +azureus (3.1.1.0-3.1) unstable; urgency=low + + * Tentative NMU. + * Build with openjdk-6-jdk by default (but allow for user rebuilds + using any JDK), and remove azureus-gcj altogether (Closes: #495514). + * Add a lintian override to signify that java and ant are indeed needed + as Build-Depends-Indep even though we do not build any arch-dependent + binary packages. + * In /usr/bin/azureus, enforce use of the JRE specified in Depends:. + + -- Sebastien Delafond <[EMAIL PROTECTED]> Mon, 18 Aug 2008 19:36:05 -0700 + azureus (3.1.1.0-3) unstable; urgency=medium * Remove the four non-latin characters in DateParserRegex.java. only in patch2: unchanged: --- azureus-3.1.1.0.orig/debian/source.lintian-overrides +++ azureus-3.1.1.0/debian/source.lintian-overrides @@ -0,0 +1,2 @@ +# java and ant are required to run clean +azureus source: build-depends-without-arch-dep only in patch2: unchanged: --- azureus-3.1.1.0.orig/debian/bin/azureus.template +++ azureus-3.1.1.0/debian/bin/azureus.template @@ -0,0 +1,7 @@ +#!/bin/sh +JAVA='%JAVA% -Xmx1024M' +. /usr/share/java-config/libswt-3.4-java +exec $JAVA -Djava.library.path=/usr/lib/jni:/usr/lib \ + -classpath /usr/share/java/Azureus2.jar:$JARS \ + -Dazureus.install.path="$HOME/.azureus" \ + org.gudy.azureus2.ui.common.Main "$@"