Bug 1318988 - Review Request: java-1.8.0-openjdk-aarch32 - OpenJDK AArch32 porting project preview release
Summary: Review Request: java-1.8.0-openjdk-aarch32 - OpenJDK AArch32 porting project ...
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Fedora
Classification: Fedora
Component: Package Review
Version: rawhide
Hardware: All
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Severin Gehwolf
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2016-03-18 10:39 UTC by jiri vanek
Modified: 2016-07-18 21:08 UTC (History)
5 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2016-07-18 18:22:24 UTC
Type: ---
Embargoed:
jerboaa: fedora-review+


Attachments (Terms of Use)
rpmlint output run on the spec file. (7.77 KB, text/plain)
2016-03-31 15:21 UTC, Severin Gehwolf
no flags Details
rpmlint output run on java-1.8.0-openjdk-aarch32-headless, java-1.8.0-openjdk-aarch32, java-1.8.0-openjdk-aarch32-devel (22.67 KB, text/plain)
2016-03-31 15:23 UTC, Severin Gehwolf
no flags Details
rpmlint output run on java-1.8.0-openjdk-aarch32-headless, java-1.8.0-openjdk-aarch32, java-1.8.0-openjdk-aarch32-devel (22.56 KB, text/plain)
2016-05-24 10:27 UTC, Severin Gehwolf
no flags Details
rpmlint output run on the spec file. (9.43 KB, text/plain)
2016-05-24 10:28 UTC, Severin Gehwolf
no flags Details

Description jiri vanek 2016-03-18 10:39:29 UTC
Spec URL: https://jvanek.fedorapeople.org/java-1.8.0-openjdk-aarch32-jit/3/java-1.8.0-openjdk.spec
SRPM URL: https://jvanek.fedorapeople.org/java-1.8.0-openjdk-aarch32-jit/bins/java-1.8.0-openjdk-aarch32-1.8.0.tip-3.tip.fc24/java-1.8.0-openjdk-aarch32-1.8.0.tip-3.tip.fc24.src.rpm
Description: A preview release of the upstream OpenJDK AArch32 porting project. In time it will be merged with the main java-1.8.0-openjdk package.
Fedora Account System Username: jvanek

Comment 1 jiri vanek 2016-03-18 10:46:23 UTC
Hello! 

This package may be ... a bit exceptional. Especially - its going to be killed and  merged in aprox. an year, and merged with main java-1.8.0-openjdk package.

From that is derivated is shape - I'm intended to keep it in sync with java-1.8.0-openjdk package as musch as possible. Ideally with changed souerces only. Current diff may be seen at https://jvanek.fedorapeople.org/java-1.8.0-openjdk-aarch32-jit/init3.patch

Also, this really is arm-32 *only* - by using it you will get aporx double speed, and double possibility of bug:) The bugs will go down  and speed should go up intime.

LAst,. but not less important are current sources. Current osurce is based on solemn tip of aarch32 project (http://hg.openjdk.java.net/aarch32-port/). Before pushing to fedor arepository, I *will* have this fixed - http://mail.openjdk.java.net/pipermail/aarch32-port-dev/2016-March/000154.htmlhttp://mail.openjdk.java.net/pipermail/aarch32-port-dev/2016-March/000154.html or somehow on my own so the sources will be reproducible.

You can see build package at: https://jvanek.fedorapeople.org/java-1.8.0-openjdk-aarch32-jit/bins/java-1.8.0-openjdk-aarch32-1.8.0.tip-3.tip.fc24/ (backup of http://koji.fedoraproject.org/koji/taskinfo?taskID=13377471)

Comment 2 jiri vanek 2016-03-18 10:47:14 UTC
Also - this pacckage is now not providing java/java devel. But will soon, once it will be really stable. Until then, you will be able to select it via alternatives only.

Comment 3 jiri vanek 2016-03-18 11:38:11 UTC
Thank you, I was just about to fix it. Sorry.

Comment 4 Severin Gehwolf 2016-03-31 08:36:18 UTC
I'll have a look at this.

Comment 5 Severin Gehwolf 2016-03-31 09:36:00 UTC
%global revision        tip

How do you intend to solve the reproducible sources issue?

Comment 6 jiri vanek 2016-03-31 09:41:51 UTC
I was hoping upstream will tag. They did not.
So probabky as you suggested on IRC - to provide list of hashes:(

Comment 7 Andrew John Hughes 2016-03-31 11:59:14 UTC
Did you get any response from upstream? I didn't see one.

Comment 8 Severin Gehwolf 2016-03-31 15:18:21 UTC
/builddir/build/BUILD/java-1.8.0-openjdk-aarch32-1.8.0.tip-3.tip.fc24.arm/openjdk/hotspot/make/linux/makefiles/vm.make:309: Building precompiled.hpp.gch 
/usr/bin/g++ -DLINUX -D_GNU_SOURCE -DCC_INTERP -DZERO -DAARCH32 -DZERO_LIBARCH=\"aarch32\" -DPRODUCT -I. -I/builddir/build/BUILD/java-1.8.0-openjdk-aarch32-1.8.0.tip-3.tip.fc24.arm/openjdk/hotspot/src/share/vm/prims -I/builddir/build/BUILD/java-1.8.0-openjdk-aarch32-1.8.0.tip-3.tip.fc24.arm/openjdk/hotspot/src/share/vm -I/builddir/build/BUILD/java-1.8.0-openjdk-aarch32-1.8.0.tip-3.tip.fc24.arm/openjdk/hotspot/src/share/vm/precompiled -I/builddir/build/BUILD/java-1.8.0-openjdk-aarch32-1.8.0.tip-3.tip.fc24.arm/openjdk/hotspot/src/cpu/zero/vm -I/builddir/build/BUILD/java-1.8.0-openjdk-aarch32-1.8.0.tip-3.tip.fc24.arm/openjdk/hotspot/src/os_cpu/linux_zero/vm -I/builddir/build/BUILD/java-1.8.0-openjdk-aarch32-1.8.0.tip-3.tip.fc24.arm/openjdk/hotspot/src/os/linux/vm -I/builddir/build/BUILD/java-1.8.0-openjdk-aarch32-1.8.0.tip-3.tip.fc24.arm/openjdk/hotspot/src/os/posix/vm -I../generated -DHOTSPOT_RELEASE_VERSION="\"25.tip-btip\"" -DHOTSPOT_BUILD_TARGET="\"product\"" -DHOTSPOT_BUILD_USER="\"mockbuild\"" -DHOTSPOT_LIB_ARCH=\"aarch32\" -DHOTSPOT_VM_DISTRO="\"OpenJDK\""  -DTARGET_OS_FAMILY_linux -DTARGET_ARCH_zero -DTARGET_ARCH_MODEL_zero -DTARGET_OS_ARCH_linux_zero -DTARGET_OS_ARCH_MODEL_linux_zero -DTARGET_COMPILER_gcc  -fPIC -fno-rtti -fno-exceptions -D_REENTRANT -fcheck-new -fvisibility=hidden  -pipe -fno-strict-aliasing  -g -fno-omit-frame-pointer -O3  -DVM_LITTLE_ENDIAN -Werror -Wpointer-arith -Wsign-compare -Wunused-function -Wunused-value   -std=gnu++98 -Wno-error -fno-delete-null-pointer-checks -fno-lifetime-dse -c -MMD -MP -MF ../generated/dependencies/precompiled.hpp.gch.d -fpch-deps -x c++-header /builddir/build/BUILD/java-1.8.0-openjdk-aarch32-1.8.0.tip-3.tip.fc24.arm/openjdk/hotspot/src/share/vm/precompiled/precompiled.hpp -o precompiled.hpp.gch 
+ /usr/bin/g++ -DLINUX -D_GNU_SOURCE -DCC_INTERP -DZERO -DAARCH32 '-DZERO_LIBARCH="aarch32"' -DPRODUCT -I. -I/builddir/build/BUILD/java-1.8.0-openjdk-aarch32-1.8.0.tip-3.tip.fc24.arm/openjdk/hotspot/src/share/vm/prims -I/builddir/build/BUILD/java-1.8.0-openjdk-aarch32-1.8.0.tip-3.tip.fc24.arm/openjdk/hotspot/src/share/vm -I/builddir/build/BUILD/java-1.8.0-openjdk-aarch32-1.8.0.tip-3.tip.fc24.arm/openjdk/hotspot/src/share/vm/precompiled -I/builddir/build/BUILD/java-1.8.0-openjdk-aarch32-1.8.0.tip-3.tip.fc24.arm/openjdk/hotspot/src/cpu/zero/vm -I/builddir/build/BUILD/java-1.8.0-openjdk-aarch32-1.8.0.tip-3.tip.fc24.arm/openjdk/hotspot/src/os_cpu/linux_zero/vm -I/builddir/build/BUILD/java-1.8.0-openjdk-aarch32-1.8.0.tip-3.tip.fc24.arm/openjdk/hotspot/src/os/linux/vm -I/builddir/build/BUILD/java-1.8.0-openjdk-aarch32-1.8.0.tip-3.tip.fc24.arm/openjdk/hotspot/src/os/posix/vm -I../generated '-DHOTSPOT_RELEASE_VERSION="25.tip-btip"' '-DHOTSPOT_BUILD_TARGET="product"' '-DHOTSPOT_BUILD_USER="mockbuild"' '-DHOTSPOT_LIB_ARCH="aarch32"' '-DHOTSPOT_VM_DISTRO="OpenJDK"' -DTARGET_OS_FAMILY_linux -DTARGET_ARCH_zero -DTARGET_ARCH_MODEL_zero -DTARGET_OS_ARCH_linux_zero -DTARGET_OS_ARCH_MODEL_linux_zero -DTARGET_COMPILER_gcc -fPIC -fno-rtti -fno-exceptions -D_REENTRANT -fcheck-new -fvisibility=hidden -pipe -fno-strict-aliasing -g -fno-omit-frame-pointer -O3 -DVM_LITTLE_ENDIAN -Werror -Wpointer-arith -Wsign-compare -Wunused-function -Wunused-value -std=gnu++98 -Wno-error -fno-delete-null-pointer-checks -fno-lifetime-dse -c -MMD -MP -MF ../generated/dependencies/precompiled.hpp.gch.d -fpch-deps -x c++-header /builddir/build/BUILD/java-1.8.0-openjdk-aarch32-1.8.0.tip-3.tip.fc24.arm/openjdk/hotspot/src/share/vm/precompiled/precompiled.hpp -o precompiled.hpp.gch

The build you are linking above and the SRPM provided build the Zero interpreter from the aarch32 sources, *not* the aarch32 template interpreter!

Comment 9 Severin Gehwolf 2016-03-31 15:20:23 UTC
Here is the first round of review feedback:

Package Review
==============
[!] URL in spec should be:
    http://openjdk.java.net/projects/aarch32-port/
[!] spec file name does not match package name. java-1.8.0-openjdk.spec vs
    java-1.8.0-openjdk-aarch32.spec
[!] Some patches are not applied (commented out). They should get removed.
------
java-1.8.0-openjdk.spec: W: patch-not-applied Patch601: java-1.8.0-openjdk-rh1191652-root.patch
java-1.8.0-openjdk.spec: W: patch-not-applied Patch602: java-1.8.0-openjdk-rh1191652-jdk.patch
java-1.8.0-openjdk.spec: W: patch-not-applied Patch603: java-1.8.0-openjdk-rh1191652-hotspot-aarch64.patch
java-1.8.0-openjdk.spec: W: patch-not-applied Patch106: remove_aarch64_template_for_gcc6.patch
java-1.8.0-openjdk.spec: W: patch-not-applied Patch107: make_reservedcodecachesize_changes_aarch64_only.patch
java-1.8.0-openjdk.spec: W: patch-not-applied Patch403: rhbz1206656_fix_current_stack_pointer.patch
java-1.8.0-openjdk.spec: W: patch-not-applied Patch505: 8143855.patch
------
[!] Source0, aarch32-port-jdk8u-tip.tar.xz has a comment about how it's
    been generated, which does not seem to work. Please use some form of
    reproducible sources. File with hg revisions corresponding to "tip" at
    the time of source tarball generation should be fine.
[!] Source8, systemtap-tapset.tar.gz, has no info as to how to generate it,
    nor is it a valid source URL.
[!] Some "Provides" are commented out. They should get removed and re-added
    once deemed appropriate for the package to provide it.
[!] Please remove FIXME comment:
----
#FIXME
#    --with-jvm-variants=core \
----
[!] Licence contains illegal license name LGPL+. It should be LGPLv2+
    See https://fedoraproject.org/wiki/Licensing:Main?rd=Licensing#Software_License_List
[!] The build that you've linked in the bug seems to update alternatives
    and prefer aarch32 over java-1.8.0-openjdk. This seems unexpected. The other version
    I had installed was java-1.8.0-openjdk-1.8.0.65-12.b17.fc24.armv7hl
[!] The java -version string of this aarch32 build seems to suggest it's actually building
    a Zero JVM rather than a aarch32 version with the template interpreter. See line 1254 of the spec file.
    "java -version" was:
---
$ java -version
openjdk version "1.8.0_tip"
OpenJDK Runtime Environment (build 1.8.0_tip-tip)
OpenJDK Zero VM (build 25.tip-btip, interpreted mode)
---
[!] Summary is too long. See rpmlint output.
    "OpenJDK Runtime Environment in a preview release of the upstream OpenJDK AArch32 porting project" is
    the offending summary.

Legend:
[x] = Pass, [!] = Fail, [-] = Not applicable, [?] = Not evaluated



===== MUST items =====

Generic:
[x]: Package is licensed with an open-source compatible license and meets
     other legal requirements as defined in the legal section of Packaging
     Guidelines.
[!]: If (and only if) the source package includes the text of the
     license(s) in its own file, then that file, containing the text of the
     license(s) for the package is included in %license.
[?]: License field in the package spec file matches the actual license.
     Note: Checking patched sources after %prep for licenses.
     It mentions GPL v2 + Classpath Exception. I did not check if others are
     still relevant.
[?]: License file installed when any subpackage combination is installed.
[?]: Package requires other packages for directories it uses.
[?]: Package must own all directories that it creates.
[!]: Package contains no bundled libraries without FPC exception.
     Bundled LCMS libs are being used. Comment mentions temporary work-around.
     Is this correct?
[x]: Changelog in prescribed format.
[x]: Sources contain only permissible code or content.
[x]: Package contains desktop file if it is a GUI application.
[x]: Development files must be in a -devel package
[?]: Package uses nothing in %doc for runtime.
[-]: Package consistently uses macros (instead of hard-coded directory
     names).
[!]: Package is named according to the Package Naming Guidelines.
     Since this is a pre-release built from a source tree snapshot, it
     should use appropriate snapshot release. See:
     https://fedoraproject.org/wiki/Packaging:NamingGuidelines?rd=Packaging/NamingGuidelines#SnapshotPackages
[x]: Package does not generate any conflict.
[x]: Package obeys FHS, except libexecdir and /usr/target.
[-]: If the package is a rename of another package, proper Obsoletes and
     Provides are present.
[x]: Requires correct, justified where necessary.
[x]: Spec file is legible and written in American English.
[-]: Package contains systemd file(s) if in need.
[x]: Package is not known to require an ExcludeArch tag.
[x]: Large documentation must go in a -doc subpackage. Large could be size
     (~1MB) or number of files.
[x]: Package complies to the Packaging Guidelines
[x]: Package successfully compiles and builds into binary rpms on at least
     one supported primary architecture.
     Note: Builds fine on armv7hl (only arch this targets).
[x]: Package installs properly.
[x]: Rpmlint is run on all rpms the build produces.
     I've run rpmlint on the spec. It would be good to run them on rpms too.
[x]: Package does not own files or directories owned by other packages.
[x]: All build dependencies are listed in BuildRequires, except for any
     that are listed in the exceptions section of Packaging Guidelines.
[x]: Package uses either %{buildroot} or $RPM_BUILD_ROOT
[!]: Package does not run rm -rf %{buildroot} (or $RPM_BUILD_ROOT) at the
     beginning of %install.
[x]: Macros in Summary, %description expandable at SRPM build time.
[x]: Dist tag is present.
[x]: Package does not contain duplicates in %files.
[x]: Permissions on files are set properly.
[-]: Package use %makeinstall only when make install DESTDIR=... doesn't
     work.
[x]: Package is named using only allowed ASCII characters.
[x]: Package does not use a name that already exists.
[x]: Package is not relocatable.
[!]: Sources used to build the package match the upstream source, as
     provided in the spec URL.
[!]: Spec file name must match the spec package %{name}, in the format
     %{name}.spec.
[x]: File names are valid UTF-8.
[x]: Packages must not store files under /srv, /opt or /usr/local

Java:
[x]: Bundled jar/class files should be removed before build
[-]: Packages have proper BuildRequires/Requires on jpackage-utils
     Note: Maven packages do not need to (Build)Require jpackage-utils. It
     is pulled in by maven-local
[x]: Javadoc documentation files are generated and included in -javadoc
     subpackage
[x]: Javadoc subpackages should not have Requires: jpackage-utils
[!]: Javadocs are placed in %{_javadocdir}/%{name} (no -%{version} symlink)

Maven:
[-]: If package contains pom.xml files install it (including metadata) even
     when building with ant
[-]: POM files have correct Maven mapping
[-]: Maven packages should use new style packaging
[-]: Old add_to_maven_depmap macro is not being used
[-]: Packages DO NOT have Requires(post) and Requires(postun) on jpackage-
     utils for %update_maven_depmap macro
[-]: Package DOES NOT use %update_maven_depmap in %post/%postun
[-]: Packages use .mfiles file list instead of %{_datadir}/maven2/poms

===== SHOULD items =====

Generic:
[x]: If the source package does not include license text(s) as a separate
     file from upstream, the packager SHOULD query upstream to include it.
[x]: Final provides and requires are sane
[x]: Fully versioned dependency in subpackages if applicable.
[ ]: Package functions as described.
[x]: Latest version is packaged.
     Note: Packager promises to update as appropriate from latest HEAD
           upstream.
[x]: Package does not include license text files separate from upstream.
[!]: SourceX tarball generation or download is documented.
     Note: Package contains tarball without URL, check comments
[-]: Description and summary sections in the package spec file contains
     translations for supported Non-English languages, if available.
[-]: Package should compile and build into binary rpms on all supported
     architectures.
     Note: ExclusiveArch: %{arm}
[-]: %check is present and all tests pass.
[-]: Packages should try to preserve timestamps of original installed
     files.
[x]: Packager, Vendor, PreReq, Copyright tags should not be in spec file
[x]: Reviewer should test that the package builds in mock.
[x]: Buildroot is not present
[x]: Package has no %clean section with rm -rf %{buildroot} (or
     $RPM_BUILD_ROOT)
[?]: No file requires outside of /etc, /bin, /sbin, /usr/bin, /usr/sbin.
[x]: SourceX is a working URL.
[x]: Spec use %global instead of %define unless justified.

Java:
[x]: Package uses upstream build method (ant/maven/etc.)
[-]: Packages are noarch unless they use JNI
     Note: This package is a full JDK specifically for ARM 32.

===== EXTRA items =====

Generic:
[x]: Rpmlint is run on all installed packages.
     Note: Ran it on most packages, not all.
[x]: Spec file according to URL is the same as in SRPM.

Comment 10 Severin Gehwolf 2016-03-31 15:21:29 UTC
Created attachment 1142275 [details]
rpmlint output run on the spec file.

Comment 11 Severin Gehwolf 2016-03-31 15:23:19 UTC
Created attachment 1142276 [details]
rpmlint output run on java-1.8.0-openjdk-aarch32-headless, java-1.8.0-openjdk-aarch32, java-1.8.0-openjdk-aarch32-devel

Comment 12 Andrew John Hughes 2016-03-31 19:01:11 UTC
(In reply to Severin Gehwolf from comment #9)

> [!] Please remove FIXME comment:
> ----
> #FIXME
> #    --with-jvm-variants=core \
> ----

I suspect this may be related to why a Zero build is the result, especially if the zero logic is present from the main java-1.8.0-openjdk build.


> ---
> [!] Summary is too long. See rpmlint output.
>     "OpenJDK Runtime Environment in a preview release of the upstream
> OpenJDK AArch32 porting project" is
>     the offending summary.
>

I suggest cutting it down to simply "A preview release of the OpenJDK AArch32 porting project". The original doesn't make sense anyway.

I still think there needs to be more interaction with upstream before shipping this, not just on tagging but also building it in the recommended way.

Comment 13 jiri vanek 2016-04-01 12:47:43 UTC
(In reply to Andrew John Hughes from comment #7)
> Did you get any response from upstream? I didn't see one.

Nothing.

Comment 14 jiri vanek 2016-04-01 12:51:09 UTC
(In reply to Severin Gehwolf from comment #8)
> /builddir/build/BUILD/java-1.8.0-openjdk-aarch32-1.8.0.tip-3.tip.fc24.arm/
> openjdk/hotspot/src/share/vm/precompiled/precompiled.hpp -o
> precompiled.hpp.gch
> 
> The build you are linking above and the SRPM provided build the Zero
> interpreter from the aarch32 sources, *not* the aarch32 template interpreter!


Indeed. And thats for now intentional. I can fix it now, during review, after review or anytime  in lifecycle.  
My target was to fix it once it will be building itself.

(In reply to Severin Gehwolf from comment #9)

> [!] Please remove FIXME comment:
> ----
> #FIXME
> #    --with-jvm-variants=core \
> ----

And thats exactly the reason why this fixme does exists.

Comment 15 jiri vanek 2016-04-01 12:54:05 UTC
I will fix/comment *the review* itself soon. But one general rule - I really wont to keep this package as in sync with main jdk as possible.

So anything we will agree is going to be fixed have to project also to main package.

Otherwise the change will be lost in some sync.

Comment 17 jiri vanek 2016-04-01 12:56:51 UTC
(In reply to Severin Gehwolf from comment #10)
> Created attachment 1142275 [details]
> rpmlint output run on the spec file.

(In reply to Severin Gehwolf from comment #11)
> Created attachment 1142276 [details]
> rpmlint output run on java-1.8.0-openjdk-aarch32-headless,
> java-1.8.0-openjdk-aarch32, java-1.8.0-openjdk-aarch32-devel

Except the LICENSE, which should be fixed, and the fix should go also to main jdk and macros in commnets which I will workaround, I did not found anything which would not be agreed on main jdk. (?)

Comment 18 jiri vanek 2016-04-01 13:08:08 UTC
(In reply to Severin Gehwolf from comment #9)
> Here is the first round of review feedback:
> 
> Package Review
> ==============
> [!] URL in spec should be:
>     http://openjdk.java.net/projects/aarch32-port/

Oook.

> [!] spec file name does not match package name. java-1.8.0-openjdk.spec vs
>     java-1.8.0-openjdk-aarch32.spec

Crap, Thanx. Good catch,

> [!] Some patches are not applied (commented out). They should get removed.


I will not remove them. Otherwise the syncing work will be unnecessarily harder. (and also those will be immediately added once upstream sync from main forests)

> ------
> java-1.8.0-openjdk.spec: W: patch-not-applied Patch601:
> java-1.8.0-openjdk-rh1191652-root.patch
> java-1.8.0-openjdk.spec: W: patch-not-applied Patch602:
> java-1.8.0-openjdk-rh1191652-jdk.patch
> java-1.8.0-openjdk.spec: W: patch-not-applied Patch603:
> java-1.8.0-openjdk-rh1191652-hotspot-aarch64.patch
> java-1.8.0-openjdk.spec: W: patch-not-applied Patch106:
> remove_aarch64_template_for_gcc6.patch
> java-1.8.0-openjdk.spec: W: patch-not-applied Patch107:
> make_reservedcodecachesize_changes_aarch64_only.patch
> java-1.8.0-openjdk.spec: W: patch-not-applied Patch403:
> rhbz1206656_fix_current_stack_pointer.patch
> java-1.8.0-openjdk.spec: W: patch-not-applied Patch505: 8143855.patch
> ------
> [!] Source0, aarch32-port-jdk8u-tip.tar.xz has a comment about how it's
>     been generated, which does not seem to work. Please use some form of
>     reproducible sources. File with hg revisions corresponding to "tip" at
>     the time of source tarball generation should be fine.
yes:(

> [!] Source8, systemtap-tapset.tar.gz, has no info as to how to generate it,
>     nor is it a valid source URL.

It is generated and how to do so file is inlcuded.
> [!] Some "Provides" are commented out. They should get removed and re-added
>     once deemed appropriate for the package to provide it.

Why so?

> [!] Please remove FIXME comment:

As spoken above, I would ratehr not :)
> ----
> #FIXME
> #    --with-jvm-variants=core \
> ----
> [!] Licence contains illegal license name LGPL+. It should be LGPLv2+
>     See

Is LGPLv2+ valid for main jdk? If so, then this fix should go to mian jdk too.

> https://fedoraproject.org/wiki/Licensing:
> Main?rd=Licensing#Software_License_List
> [!] The build that you've linked in the bug seems to update alternatives
>     and prefer aarch32 over java-1.8.0-openjdk. This seems unexpected. The
> other version
>     I had installed was java-1.8.0-openjdk-1.8.0.65-12.b17.fc24.armv7hl

oooOh right :-/ There is logic, which constructs numbers from Bxx and Uxx strings. If htose are tip, then 99 is substituted.

that is making the tip/hashes much less usable then an valid upstream tagging :-/


> [!] The java -version string of this aarch32 build seems to suggest it's
> actually building
>     a Zero JVM rather than a aarch32 version with the template interpreter.
> See line 1254 of the spec file.
>     "java -version" was:
> ---
> $ java -version
> openjdk version "1.8.0_tip"
> OpenJDK Runtime Environment (build 1.8.0_tip-tip)
> OpenJDK Zero VM (build 25.tip-btip, interpreted mode)

Right - https://bugzilla.redhat.com/show_bug.cgi?id=1318988#c12

But I do not insits on this. It seemed to me a reasonable thing, but if you feel differently, I wil follow

> ---
> [!] Summary is too long. See rpmlint output.
>     "OpenJDK Runtime Environment in a preview release of the upstream
> OpenJDK AArch32 porting project" is
>     the offending summary.

:( oook.
> 


TYVM for review!

Comment 19 Severin Gehwolf 2016-04-01 13:26:40 UTC
(In reply to jiri vanek from comment #14)
> (In reply to Severin Gehwolf from comment #8)
> > /builddir/build/BUILD/java-1.8.0-openjdk-aarch32-1.8.0.tip-3.tip.fc24.arm/
> > openjdk/hotspot/src/share/vm/precompiled/precompiled.hpp -o
> > precompiled.hpp.gch
> > 
> > The build you are linking above and the SRPM provided build the Zero
> > interpreter from the aarch32 sources, *not* the aarch32 template interpreter!
> 
> 
> Indeed. And thats for now intentional. I can fix it now, during review,
> after review or anytime  in lifecycle.

Please propose a spec for review which does what it will ultimately do. The whole point of this extra package is the aarch32 template interpreter. So yes, please change this to use the template interpreter and show that it builds and works reasonably.

> My target was to fix it once it will be building itself.

For the sake of this review, I'd be willing to accept that it doesn't yet build itself. That is something which can be fixed once the review is done. It should at least work reasonably, though.

> (In reply to Severin Gehwolf from comment #9)
> 
> > [!] Please remove FIXME comment:
> > ----
> > #FIXME
> > #    --with-jvm-variants=core \
> > ----

Fair enough. A comment could have said so.

Comment 20 jiri vanek 2016-04-14 13:50:54 UTC
(In reply to jiri vanek from comment #13)
> (In reply to Andrew John Hughes from comment #7)
> > Did you get any response from upstream? I didn't see one.
> 
> Nothing.

Upstream added tagging. I will base on it.

Comment 21 jiri vanek 2016-04-14 14:17:06 UTC
Spec URL: https://jvanek.fedorapeople.org/java-1.8.0-openjdk-aarch32-jit/4/java-1.8.0-openjdk-aarch32.spec
SRPM URL: https://jvanek.fedorapeople.org/java-1.8.0-openjdk-aarch32-jit/4/java-1.8.0-openjdk-aarch32-1.8.0.76-1.b00.fc24.src.rpm

Description: A preview release of the upstream OpenJDK AArch32 porting project. In time it will be merged with the main java-1.8.0-openjdk package.
Fedora Account System Username: jvanek

https://jvanek.fedorapeople.org/java-1.8.0-openjdk-aarch32-jit/init4.patch

scratch build: http://koji.fedoraproject.org/koji/taskinfo?taskID=13659515

I hope i fixed most of the issues you mentioned:
- source is now based on upstream tag
- zero is no longer build
- specfile renamed 
- summary shortened. Sorry to say it, but i insists on shared prefix with main jdk.

Fixed and need to go to main jdks:
- license macro used properly now.
- invalid license fixed

Kept
- upstream url - it is valid url. It i sparent of all projects on openjdk.java.net. I consider it as better source of information then direct project. Also it would be lost during first sync
- patches commented out reduced by updating to latest upstream tag. I have no intentions to remove commented patches, as my intention is to keep pathces aligned with regular rpms. Any removing wil just increase maintenance cost.
- same with provides
- systemtap have no real upstream (imho) and the tutorial how to built it is in generate_tarballs.sh which is in repo
- pkg is now based on u77, so the priority will jump for you again. But once the CPU update is done next week, mainjdk will be main again. And tbh:) I would liek to prefer this jdk when both are installed :)
- yes, bundled lcms is workaround

Comment 23 jiri vanek 2016-04-15 10:19:37 UTC
spec+srpm updated by
https://jvanek.fedorapeople.org/java-1.8.0-openjdk-aarch32-jit/5/tipHotspot.patch

http://koji.fedoraproject.org/koji/taskinfo?taskID=13669143

It starts to be cleat that tip was more predictable...

Comment 26 Severin Gehwolf 2016-05-23 13:57:41 UTC
Sorry for getting back to you with such a delay.

(In reply to jiri vanek from comment #25)
> looks mutch better:
> http://koji.fedoraproject.org/koji/taskinfo?taskID=13670361

Unfortunately artefacts from this build have been cleaned up. Could you push another scratch build?

Comment 27 Severin Gehwolf 2016-05-23 17:07:40 UTC
(In reply to Severin Gehwolf from comment #26)
> Unfortunately artefacts from this build have been cleaned up. Could you push
> another scratch build?

NVM. I've kicked off a new scratch build here:
http://koji.fedoraproject.org/koji/taskinfo?taskID=14222979

Comment 28 Severin Gehwolf 2016-05-24 10:27:00 UTC
Created attachment 1160977 [details]
rpmlint output run on java-1.8.0-openjdk-aarch32-headless, java-1.8.0-openjdk-aarch32, java-1.8.0-openjdk-aarch32-devel

Comment 29 Severin Gehwolf 2016-05-24 10:28:10 UTC
Created attachment 1160978 [details]
rpmlint output run on the spec file.

Comment 30 Severin Gehwolf 2016-05-24 10:30:47 UTC
[!] Changelog is not in prescribed format:
java-1.8.0-openjdk-aarch32.armv7hl: W: incoherent-version-in-changelog 1:1.8.0.xx-1.bb ['1:1.8.0.76-1.160415.fc24', '1:1.8.0.76-1.160415']
Use "1:1.8.0.76-1.160415" rather "than 1:1.8.0.xx-1.bb"
[!]: Sources used to build the package match the upstream source, as
     provided in the spec URL.
     Used the following command to generate the source tarball locally:
     $ PROJECT_NAME=aarch32-port VERSION=jdk8u76-b00-aarch32-160415 REPO_NAME=jdk8u \
        bash ../generate_source_tarball.sh
     where "generate_source_tarball.sh" is as in the main java-1.8.0-openjdk
     dist-git repo.
     $ md5sum aarch32-port-jdk8u-jdk8u76-b00-aarch32-160415.tar.xz 
f4e5fa08100e18a8ed74180bcb98aea2  aarch32-port-jdk8u-jdk8u76-b00-aarch32-160415.tar.xz
     From the SRPM:
     $ md5sum srpm-unpacked/aarch32-port-jdk8u-jdk8u76-b00-aarch32-160415.tar.xz
73127e42f6536fd0c10b0237ac0ee808  srpm-unpacked/aarch32-port-jdk8u-jdk8u76-b00-aarch32-160415.tar.xz
     Perhaps I'm doing something wrong?
[!] Mixed use of tabs and spaces in spec:
srpm/java-1.8.0-openjdk-aarch32.spec:634: W: mixed-use-of-spaces-and-tabs (spaces: line 8, tab: line 634)


Package Review
==============
Legend:
[x] = Pass, [!] = Fail, [-] = Not applicable, [?] = Not evaluated



===== MUST items =====

Generic:
[x]: Package is licensed with an open-source compatible license and meets
     other legal requirements as defined in the legal section of Packaging
     Guidelines.
[x]: If (and only if) the source package includes the text of the
     license(s) in its own file, then that file, containing the text of the
     license(s) for the package is included in %license.
[?]: License field in the package spec file matches the actual license.
     Note: Checking patched sources after %prep for licenses.
     It mentions GPL v2 + Classpath Exception. I did not check if others are
     still relevant.
[?]: License file installed when any subpackage combination is installed.
[?]: Package requires other packages for directories it uses.
[?]: Package must own all directories that it creates.
[x]: Package contains no bundled libraries without FPC exception.
     Bundled LCMS libs are being used. This is a known work-around.
[!]: Changelog in prescribed format.
[x]: Sources contain only permissible code or content.
[x]: Package contains desktop file if it is a GUI application.
[x]: Development files must be in a -devel package
[?]: Package uses nothing in %doc for runtime.
[-]: Package consistently uses macros (instead of hard-coded directory
     names).
[x]: Package is named according to the Package Naming Guidelines.
     I would name it 0.1.<DATE> rather than 1.<DATE>, but OK.
[x]: Package does not generate any conflict.
[x]: Package obeys FHS, except libexecdir and /usr/target.
[-]: If the package is a rename of another package, proper Obsoletes and
     Provides are present.
[x]: Requires correct, justified where necessary.
[x]: Spec file is legible and written in American English.
[-]: Package contains systemd file(s) if in need.
[x]: Package is not known to require an ExcludeArch tag.
[x]: Large documentation must go in a -doc subpackage. Large could be size
     (~1MB) or number of files.
[x]: Package complies to the Packaging Guidelines
[x]: Package successfully compiles and builds into binary rpms on at least
     one supported primary architecture.
     Note: Builds fine on armv7hl (only arch this targets).
[x]: Package installs properly.
[x]: Rpmlint is run on all rpms the build produces.
     I've run rpmlint on the spec. It would be good to run them on rpms too.
[x]: Package does not own files or directories owned by other packages.
[x]: All build dependencies are listed in BuildRequires, except for any
     that are listed in the exceptions section of Packaging Guidelines.
[x]: Package uses either %{buildroot} or $RPM_BUILD_ROOT
[x]: Package does not run rm -rf %{buildroot} (or $RPM_BUILD_ROOT) at the
     beginning of %install.
[x]: Macros in Summary, %description expandable at SRPM build time.
[x]: Dist tag is present.
[x]: Package does not contain duplicates in %files.
[x]: Permissions on files are set properly.
[-]: Package use %makeinstall only when make install DESTDIR=... doesn't
     work.
[x]: Package is named using only allowed ASCII characters.
[x]: Package does not use a name that already exists.
[x]: Package is not relocatable.
[!]: Sources used to build the package match the upstream source, as
     provided in the spec URL.
     Used the following command to generate the source tarball locally:
     $ PROJECT_NAME=aarch32-port VERSION=jdk8u76-b00-aarch32-160415 REPO_NAME=jdk8u \
        bash ../generate_source_tarball.sh
     where "generate_source_tarball.sh" is as in the main java-1.8.0-openjdk
     dist-git repo.
     $ md5sum aarch32-port-jdk8u-jdk8u76-b00-aarch32-160415.tar.xz 
f4e5fa08100e18a8ed74180bcb98aea2  aarch32-port-jdk8u-jdk8u76-b00-aarch32-160415.tar.xz
     From the SRPM:
     $ md5sum srpm-unpacked/aarch32-port-jdk8u-jdk8u76-b00-aarch32-160415.tar.xz
73127e42f6536fd0c10b0237ac0ee808  srpm-unpacked/aarch32-port-jdk8u-jdk8u76-b00-aarch32-160415.tar.xz
[x]: Spec file name must match the spec package %{name}, in the format
     %{name}.spec.
[x]: File names are valid UTF-8.
[x]: Packages must not store files under /srv, /opt or /usr/local

Java:
[x]: Bundled jar/class files should be removed before build
[-]: Packages have proper BuildRequires/Requires on jpackage-utils
     Note: Maven packages do not need to (Build)Require jpackage-utils. It
     is pulled in by maven-local
[x]: Javadoc documentation files are generated and included in -javadoc
     subpackage
[x]: Javadoc subpackages should not have Requires: jpackage-utils
[x]: Javadocs are placed in %{_javadocdir}/%{name} (no -%{version} symlink)
     Javadocs for the JDK are in:
     /usr/share/javadoc/java-1.8.0-openjdk-aarch32-1.8.0.76-1.160415.fc24
     This is OK since it's a JDK, not a Java app.

Maven:
[-]: If package contains pom.xml files install it (including metadata) even
     when building with ant
[-]: POM files have correct Maven mapping
[-]: Maven packages should use new style packaging
[-]: Old add_to_maven_depmap macro is not being used
[-]: Packages DO NOT have Requires(post) and Requires(postun) on jpackage-
     utils for %update_maven_depmap macro
[-]: Package DOES NOT use %update_maven_depmap in %post/%postun
[-]: Packages use .mfiles file list instead of %{_datadir}/maven2/poms

===== SHOULD items =====

Generic:
[x]: If the source package does not include license text(s) as a separate
     file from upstream, the packager SHOULD query upstream to include it.
[x]: Final provides and requires are sane
[x]: Fully versioned dependency in subpackages if applicable.
[ ]: Package functions as described.
[x]: Latest version is packaged.
     Note: Packager promises to update as appropriate from latest HEAD
           upstream.
[x]: Package does not include license text files separate from upstream.
[x]: SourceX tarball generation or download is documented.
     OK. Though, a bit hard to find.
[-]: Description and summary sections in the package spec file contains
     translations for supported Non-English languages, if available.
[-]: Package should compile and build into binary rpms on all supported
     architectures.
     Note: ExclusiveArch: %{arm}
[-]: %check is present and all tests pass.
[-]: Packages should try to preserve timestamps of original installed
     files.
[x]: Packager, Vendor, PreReq, Copyright tags should not be in spec file
[x]: Reviewer should test that the package builds in mock.
[x]: Buildroot is not present
[x]: Package has no %clean section with rm -rf %{buildroot} (or
     $RPM_BUILD_ROOT)
[?]: No file requires outside of /etc, /bin, /sbin, /usr/bin, /usr/sbin.
[x]: SourceX is a working URL.
[x]: Spec use %global instead of %define unless justified.

Java:
[x]: Package uses upstream build method (ant/maven/etc.)
[-]: Packages are noarch unless they use JNI
     Note: This package is a full JDK specifically for ARM 32.

===== EXTRA items =====

Generic:
[x]: Rpmlint is run on all installed packages.
     Note: Ran it on most packages, not all.
[x]: Spec file according to URL is the same as in SRPM.

Comment 31 Severin Gehwolf 2016-05-24 10:32:12 UTC
(In reply to jiri vanek from comment #21)
> I hope i fixed most of the issues you mentioned:
> - source is now based on upstream tag
> - zero is no longer build
> - specfile renamed 
> - summary shortened. Sorry to say it, but i insists on shared prefix with
> main jdk.
> 
> Fixed and need to go to main jdks:
> - license macro used properly now.
> - invalid license fixed

Great, thanks!

> Kept
> - upstream url - it is valid url. It i sparent of all projects on
> openjdk.java.net. I consider it as better source of information then direct
> project. Also it would be lost during first sync
> - patches commented out reduced by updating to latest upstream tag. I have
> no intentions to remove commented patches, as my intention is to keep
> pathces aligned with regular rpms. Any removing wil just increase
> maintenance cost.
> - same with provides
> - systemtap have no real upstream (imho) and the tutorial how to built it is
> in generate_tarballs.sh which is in repo
> - pkg is now based on u77, so the priority will jump for you again. But once
> the CPU update is done next week, mainjdk will be main again. And tbh:) I
> would liek to prefer this jdk when both are installed :)
> - yes, bundled lcms is workaround

OK. This seems justified.

Comment 32 Severin Gehwolf 2016-05-24 10:34:53 UTC
$ /usr/lib/jvm/java-1.8.0-openjdk-aarch32-1.8.0.76-1.160415.fc24.arm/bin/java -version
openjdk version "1.8.0_76"
OpenJDK Runtime Environment (build 1.8.0_76-160415)
OpenJDK  VM (build 25.76-b160415, interpreted mode)

This is no longer a Zero JVM and can run "java -version". Which is good enough for a initial "package is functional" perspective for me.

Comment 33 Severin Gehwolf 2016-05-24 10:39:20 UTC
$ rpm -q --provides java-1.8.0-openjdk-aarch32{,-devel,-headless}
application()
application(java-1.8.0-openjdk-aarch32-1.8.0.76-1.160415.fc24.arm-policytool.desktop)
java-1.8.0-openjdk-aarch32 = 1:1.8.0.76-1.160415.fc24
java-1.8.0-openjdk-aarch32(armv7hl-32) = 1:1.8.0.76-1.160415.fc24
application()
application(java-1.8.0-openjdk-aarch32-1.8.0.76-1.160415.fc24.arm-jconsole.desktop)
java-1.8.0-openjdk-aarch32-devel = 1:1.8.0.76-1.160415.fc24
java-1.8.0-openjdk-aarch32-devel(armv7hl-32) = 1:1.8.0.76-1.160415.fc24
libjawt.so
libjawt.so(SUNWprivate_1.1)
libjli.so
libjli.so(SUNWprivate_1.1)
libunpack.so(SUNWprivate_1.1)
config(java-1.8.0-openjdk-aarch32-headless) = 1:1.8.0.76-1.160415.fc24
java-1.8.0-openjdk-aarch32-headless = 1:1.8.0.76-1.160415.fc24
java-1.8.0-openjdk-aarch32-headless(armv7hl-32) = 1:1.8.0.76-1.160415.fc24
libattach.so
libattach.so(SUNWprivate_1.1)
libawt.so
libawt_headless.so
libawt_headless.so(SUNWprivate_1.1)
libawt_xawt.so
libawt_xawt.so(SUNWprivate_1.1)
libdt_socket.so
libdt_socket.so(SUNWprivate_1.1)
libfontmanager.so
libfontmanager.so(SUNWprivate_1.1)
libhprof.so
libhprof.so(SUNWprivate_1.1)
libinstrument.so
libinstrument.so(SUNWprivate_1.1)
libj2gss.so
libj2gss.so(SUNWprivate_1.1)
libj2pcsc.so
libj2pcsc.so(SUNWprivate_1.1)
libj2pkcs11.so
libj2pkcs11.so(SUNWprivate_1.1)
libjaas_unix.so
libjava.so
libjava.so(SUNWprivate_1.1)
libjava_crw_demo.so
libjava_crw_demo.so(SUNWprivate_1.1)
libjavajpeg.so
libjavajpeg.so(SUNWprivate_1.1)
libjawt.so
libjawt.so(SUNWprivate_1.1)
libjdwp.so
libjdwp.so(SUNWprivate_1.1)
libjli.so
libjli.so(SUNWprivate_1.1)
libjsdt.so
libjsdt.so(SUNWprivate_1.1)
libjsig.so
libjsound.so
libjsound.so(SUNWprivate_1.1)
libjsoundalsa.so
libjsoundalsa.so(SUNWprivate_1.1)
libjvm.so
libjvm.so(SUNWprivate_1.1)
liblcms.so
liblcms.so(SUNWprivate_1.1)
libmanagement.so
libmanagement.so(SUNWprivate_1.1)
libmlib_image.so
libmlib_image.so(SUNWprivate_1.1)
libnet.so
libnet.so(SUNWprivate_1.1)
libnio.so
libnio.so(SUNWprivate_1.1)
libnpt.so
libnpt.so(SUNWprivate_1.1)
libsctp.so
libsctp.so(SUNWprivate_1.1)
libsplashscreen.so
libsplashscreen.so(SUNWprivate_1.1)
libsunec.so
libsunec.so(SUNWprivate_1.1)
libunpack.so
libunpack.so(SUNWprivate_1.1)
libverify.so
libverify.so(SUNWprivate_1.1)
libzip.so
libzip.so(SUNWprivate_1.1)

Note that this might cause java-1.8.0-openjdk-aarch32 to get dragged in as a providing package if some package requires a JDK-provided shared library. I don't think we can do much about this (other than filtering those auto-generated provides). Otherwise provides look alright. No java-* provides are there.

Comment 34 jiri vanek 2016-06-29 13:31:59 UTC
(In reply to Severin Gehwolf from comment #30)
> [!] Changelog is not in prescribed format:
> java-1.8.0-openjdk-aarch32.armv7hl: W: incoherent-version-in-changelog
> 1:1.8.0.xx-1.bb ['1:1.8.0.76-1.160415.fc24', '1:1.8.0.76-1.160415']
> Use "1:1.8.0.76-1.160415" rather "than 1:1.8.0.xx-1.bb"
fixed

> [!]: Sources used to build the package match the upstream source, as
>      provided in the spec URL.
>      Used the following command to generate the source tarball locally:
>      $ PROJECT_NAME=aarch32-port VERSION=jdk8u76-b00-aarch32-160415
> REPO_NAME=jdk8u \
>         bash ../generate_source_tarball.sh
>      where "generate_source_tarball.sh" is as in the main java-1.8.0-openjdk
>      dist-git repo.
>      $ md5sum aarch32-port-jdk8u-jdk8u76-b00-aarch32-160415.tar.xz 
> f4e5fa08100e18a8ed74180bcb98aea2 
> aarch32-port-jdk8u-jdk8u76-b00-aarch32-160415.tar.xz
>      From the SRPM:
>      $ md5sum
> srpm-unpacked/aarch32-port-jdk8u-jdk8u76-b00-aarch32-160415.tar.xz
> 73127e42f6536fd0c10b0237ac0ee808 
> srpm-unpacked/aarch32-port-jdk8u-jdk8u76-b00-aarch32-160415.tar.xz
>      Perhaps I'm doing something wrong?

There is nothing I can do about this. You know that openjdk do not do releases. They tag, and anybody can clone.
The tar/zip archives are generally not reproducible(timestamps), and I don't think that there is serious reason to force the reproducibiity.

In addition I'm providing scrip twhich can regenerate osurces by one click.

> [!] Mixed use of tabs and spaces in spec:
> srpm/java-1.8.0-openjdk-aarch32.spec:634: W: mixed-use-of-spaces-and-tabs
> (spaces: line 8, tab: line 634)

fixed
> 
> 
> Package Review
> ==============
> Legend:
> [x] = Pass, [!] = Fail, [-] = Not applicable, [?] = Not evaluated
> 
> 
> 
> ===== MUST items =====
> 
> Generic:
> [x]: Package is licensed with an open-source compatible license and meets
>      other legal requirements as defined in the legal section of Packaging
>      Guidelines.
> [x]: If (and only if) the source package includes the text of the
>      license(s) in its own file, then that file, containing the text of the
>      license(s) for the package is included in %license.
> [?]: License field in the package spec file matches the actual license.
>      Note: Checking patched sources after %prep for licenses.
>      It mentions GPL v2 + Classpath Exception. I did not check if others are
>      still relevant.

This should be ok.

> [?]: License file installed when any subpackage combination is installed.
> [?]: Package requires other packages for directories it uses.
> [?]: Package must own all directories that it creates.

The oownership should be correct.What is not owned by jdk itself, is owned by jpackage-toosl or other dependencies.

> [x]: Package contains no bundled libraries without FPC exception.
>      Bundled LCMS libs are being used. This is a known work-around.
> [!]: Changelog in prescribed format.

fixed
> [x]: Sources contain only permissible code or content.
> [x]: Package contains desktop file if it is a GUI application.
> [x]: Development files must be in a -devel package
> [?]: Package uses nothing in %doc for runtime.

that is correct.

> [-]: Package consistently uses macros (instead of hard-coded directory
>      names).

Of course it does:)
> [x]: Package is named according to the Package Naming Guidelines.
...
> [x]: Package is not relocatable.
> [!]: Sources used to build the package match the upstream source, as
>      provided in the spec URL.
>      Used the following command to generate the source tarball locally:
>      $ PROJECT_NAME=aarch32-port VERSION=jdk8u76-b00-aarch32-160415
> REPO_NAME=jdk8u \
>         bash ../generate_source_tarball.sh
>      where "generate_source_tarball.sh" is as in the main java-1.8.0-openjdk
>      dist-git repo.
>      $ md5sum aarch32-port-jdk8u-jdk8u76-b00-aarch32-160415.tar.xz 
> f4e5fa08100e18a8ed74180bcb98aea2 
> aarch32-port-jdk8u-jdk8u76-b00-aarch32-160415.tar.xz
>      From the SRPM:
>      $ md5sum
> srpm-unpacked/aarch32-port-jdk8u-jdk8u76-b00-aarch32-160415.tar.xz
> 73127e42f6536fd0c10b0237ac0ee808 
> srpm-unpacked/aarch32-port-jdk8u-jdk8u76-b00-aarch32-160415.tar.xz

As described above.

<snip>

In meantime updated to latest u91 of aarch32 8u project.

How do you feel about it now?
https://jvanek.fedorapeople.org/java-1.8.0-openjdk-aarch32-jit/7/java-1.8.0-openjdk-aarch32-1.8.0.91-1.160510.fc24.src.rpm
https://jvanek.fedorapeople.org/java-1.8.0-openjdk-aarch32-jit/7/java-1.8.0-openjdk-aarch32.spec

scracth build in progress: http://koji.fedoraproject.org/koji/taskinfo?taskID=14701925

Comment 35 Severin Gehwolf 2016-07-12 18:05:20 UTC
Thanks for the fixes!

$ /usr/lib/jvm/java-1.8.0-openjdk-aarch32-1.8.0.91-1.160510.fc24.arm/bin/java -version
openjdk version "1.8.0_91"
OpenJDK Runtime Environment (build 1.8.0_91-160510)
OpenJDK  VM (build 25.91-b160510, interpreted mode)

Reproducible sources:

$ PROJECT_NAME=aarch32-port VERSION=jdk8u91-b14-aarch32-160510 REPO_NAME=jdk8u bash generate_source_tarball.sh
$ ls aarch32-port-jdk8u-jdk8u91-b14-aarch32-160510.tar.xz

$ md5sum aarch32-port-jdk8u-jdk8u91-b14-aarch32-160510.tar.xz
48d03c7467e8e69a2f87d6cdce0b0c6d  aarch32-port-jdk8u-jdk8u91-b14-aarch32-160510.tar.xz
$ md5sum path/to/srpm-tarball/aarch32-port-jdk8u-jdk8u91-b14-aarch32-160510.tar.xz
8a594be659a403b7cb623d83602cdd50  path/to/srpm-tarball/aarch32-port-jdk8u-jdk8u91-b14-aarch32-160510.tar.xz
aarch32-port-jdk8u-jdk8u91-b14-aarch32-160510.tar.xz
$ mkdir extracted; cd extracted
$ tar -xf ../aarch32-port-jdk8u-jdk8u91-b14-aarch32-160510.tar.xz
$ cd ../; mkdir extracted-srpm; cd extracted-srpm
$ tar -xf path/to/srpm-tarball/aarch32-port-jdk8u-jdk8u91-b14-aarch32-160510.tar.xz
$ cd ..
$ diff -u -r extracted extracted-srpm
<nothing> => good!

So it seems one can regenerate the same sources even though checksums won't match (timestamps). This is OK as they can be checked manually as above.

No further comments. Looks good to me! Thanks for your patience.

Comment 36 jiri vanek 2016-07-14 09:37:32 UTC
Thanx!

Repo finished, imported and building!

Comment 37 Fedora Update System 2016-07-15 06:44:50 UTC
java-1.8.0-openjdk-aarch32-1.8.0.91-1.160510.fc24 has been submitted as an update to Fedora 24. https://bodhi.fedoraproject.org/updates/FEDORA-2016-4cd7a4c3f8

Comment 38 Fedora Update System 2016-07-15 19:25:17 UTC
java-1.8.0-openjdk-aarch32-1.8.0.91-1.160510.fc24 has been pushed to the Fedora 24 testing repository. If problems still persist, please make note of it in this bug report.
See https://fedoraproject.org/wiki/QA:Updates_Testing for
instructions on how to install test updates.
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2016-4cd7a4c3f8

Comment 39 Fedora Update System 2016-07-18 18:22:21 UTC
java-1.8.0-openjdk-aarch32-1.8.0.91-1.160510.fc24 has been pushed to the Fedora 24 stable repository. If problems still persist, please make note of it in this bug report.


Note You need to log in before you can comment on or make changes to this bug.