[Bug 504489] Review Request: proguard - Java class file shrinker, optimizer, obfuscator and preverifier
bugzilla at redhat.com
bugzilla at redhat.com
Mon Jun 8 19:18:52 UTC 2009
Please do not reply directly to this email. All additional
comments should be made in the comments box of this bug.
https://bugzilla.redhat.com/show_bug.cgi?id=504489
--- Comment #3 from Orcan 'oget' Ogetbil <oget.fedora at gmail.com> 2009-06-08 15:18:51 EDT ---
(In reply to comment #2)
> Spec URL: http://fkooman.fedorapeople.org/proguard/proguard.spec
> SRPM URL: http://fkooman.fedorapeople.org/proguard/proguard-4.3-2.fc11.src.rpm
>
Thanks for the update!
> (In reply to comment #1)
> > ! Please explain in the specfile as comments what Sources 1-3 are for.
>
> Done.
>
Can you also use "cp -p" with them to preserve timestamps?
> > ! Not a blocker, but in the docs/ and examples/ directories, there are html,
> > xml and pro files that refer to /usr/local/. You might want to fix them.
>
> I've included a README.dist now.
>
> > ? Any reason why you don't put the jar files directly in /usr/share/java/ ?
>
> Yes, Packaging:Java says something about this:
> """ 1. If the number of provided JAR files exceeds two, you must place them
> into a sub-directory. """
>
> Maybe I misread/misunderstood?
Ah, right. Then can you
(from comment #1)
> replace
> %{_javadir}/%{name}*
> with
> %{_javadir}/%{name}/
> in %files to indicate that this is a directory?
>
> > * If a package contains a GUI application, then it needs to also include a
> > properly installed .desktop file.
>
> Done. The problem now is that I can't find a suitable icon for ProGuard
> anywhere. For now I use the "java" icon.
>
That's fine. You could also derive something from the png files in the docs/
directory, or ask the upstream about this.
Btw,
/usr/share/icons/hicolor/*/apps/java.png
files belong to java-1.6.0-openjdk, so if you use that icon, you need to
require this version of java.
> > ! You need to specify a specific java version in BR and R. See:
> > http://fedoraproject.org/wiki/Packaging/Java#BuildRequires_and_Requires
> > In your case this ought to be 1.5
>
> This doesn't seem mandatory the way I read this? Also it is not mentioned in
> the "ant" template I used to create this spec file. Furthermore, I tried to
> compile it with "-source 1.4" and that also works?
>
Well, it's good to have it to indicate what versions of java can be used with
this software.
> > * GCJ AOT bits SHOULD be built and included in packages. Since this package
> > builds with java 1.5, this will bring great performance improvements on ppc*
> > architectures. Please follow:
> > http://fedoraproject.org/wiki/Packaging/GCJGuidelines
>
> I did this now. However, rpmbuild gives some warnings now:
>
> + /usr/bin/aot-compile-rpm
> /usr/lib/python2.6/site-packages/aotcompile.py:18: DeprecationWarning: the md5
> module is deprecated; use hashlib instead
> import md5
> aot-compile-rpm: warning: subsetted
> /home/fkooman/rpmbuild/BUILDROOT/proguard-4.3-2.fc11.x86_64/usr/share/java/proguard/proguardgui.jar
> aot-compile-rpm: warning: subsetted
> /home/fkooman/rpmbuild/BUILDROOT/proguard-4.3-2.fc11.x86_64/usr/share/java/proguard/retrace.jar
>
> WARNING: Error loading security provider
> org.bouncycastle.jce.provider.BouncyCastleProvider:
> java.lang.ClassNotFoundException:
> org.bouncycastle.jce.provider.BouncyCastleProvider not found in
> gnu.gcj.runtime.SystemClassLoader{urls=[file:./],
> parent=gnu.gcj.runtime.ExtensionClassLoader{urls=[], parent=null}}
> WARNING: Error loading security provider
> org.bouncycastle.jce.provider.BouncyCastleProvider:
> java.lang.ClassNotFoundException:
> org.bouncycastle.jce.provider.BouncyCastleProvider not found in
> gnu.gcj.runtime.SystemClassLoader{urls=[file:./],
> parent=gnu.gcj.runtime.ExtensionClassLoader{urls=[], parent=null}}
>
> rpmlint is also not totally happy:
>
> [fkooman at localhost x86_64]$ rpmlint proguard-4.3-2.fc11.x86_64.rpm
> proguard.x86_64: W: unstripped-binary-or-object
> /usr/lib64/gcj/proguard/proguard.jar.so
> 1 packages and 0 specfiles checked; 0 errors, 1 warnings.
> [fkooman at localhost x86_64]$
>
Hmm, I don't get these warnings. Koji rawhide build doesn't show them either
http://koji.fedoraproject.org/koji/taskinfo?taskID=1399792
Do you use mock? If not, do you have redhat-rpm-config installed?
> and the one that is due to GCJ (which can be ignored):
>
> proguard.spec:118: W: libdir-macro-in-noarch-package (main package)
> %attr(-,root,root) %{_libdir}/gcj/%{name}
>
Yes, this warning can be ignored (this is the only warning I got on my build).
Btw, you can just remove the %attr(-,root,root) part. I've been pinging java
folks about this and a few other things that need to be updated in the java
packaging guidelines. Things go "a little" slow.
> > Can you review my package (bug #504521 )? It is java too.
>
> It seems someone is already interested in reviewing it. I added myself to the
> CC of the bug anyway and look through it soon. Thanks for your review!
You're welcome! Yep. Rakesh took it :) It's okay.
* Also, please use macros consistently. E.g.
${RPM_BUILD_ROOT} and $RPM_BUILD_ROOT
shouldn't be in the same specfile. Also, please either use %{name} all over the
specfile or use proguard. Not a mixture of both!
--
Configure bugmail: https://bugzilla.redhat.com/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
More information about the Fedora-package-review
mailing list