Opened 5 years ago

Closed 5 years ago

#7779 closed enhancement (fixed)

OpenJDK-1.8.0.92

Reported by: Pierre Labastie Owned by: Pierre Labastie
Priority: normal Milestone: 7.10
Component: BOOK Version: SVN
Severity: normal Keywords:
Cc:

Description

New point version.

See http://www.oracle.com/technetwork/java/javase/8u92-relnotes-2949471.html

The full version string for this update release is 1.8.0_92-b14

Change History (5)

comment:1 by Pierre Labastie, 5 years ago

Owner: changed from blfs-book@… to Pierre Labastie
Status: newassigned

comment:2 by Pierre Labastie, 5 years ago

Trying to summarize the issues with GCC 6:

  • All the compilations using g++ need -std=c++98, -fno-delete-null-pointer-checks, and -fno-lifetime-dse, while those using gcc sometimes need -fno-delete-null-pointer-checks and -fno-lifetime-dse. See http://hg.openjdk.java.net/jdk9/dev/rev/9d77f922d694. Problem is the build system does not honor the CC and CXX variables.
  • There are options --with-extra-cflags and --with-extra-cxxflags, which can be passed to configure, but the hotspot build system uses extra-cflags as flags for g++. So -std=c++98 has to be added to the extra-cflags. But then, when used as flags for gcc, it generates a warning, and because -Werror is used, it becomes an error and stops the build. So the right combination for extra-cflags is -std=c++98 -fno-delete-null-pointer-checks -fno-lifetime-dse -Wno-error.
  • That is not enough. During the build of jdk, there is a make variable, which is passed for some compilations:
    SCTP_WERROR := -Werror -Wno-error=unused-parameter
    

and $(SCTP_WERROR) is inserted after the extra-cflags, so the effect of -Wno-error is lost, and the build fails at this point.

There is a srpm in fedora rawhide (java-1.8.0-openjdk-1.8.0.91-3.b14.fc25.src.rpm), which has:

EXTRA_CFLAGS="%ourcppflags -std=gnu++98 -Wno-error -fno-delete-null-pointer-checks -fno-lifetime-dse"
EXTRA_CPP_FLAGS="%ourcppflags -std=gnu++98 -fno-delete-null-pointer-checks -fno-lifetime-dse"
[...]
bash configure \
[...]
   --with-extra-cxxflags="$EXTRA_CPP_FLAGS" \
   --with-extra-cflags="$EXTRA_CFLAGS"
[...]
make [...] SCTP_WERROR=

With those instructions added to the book, the build goes to completion. I need to run the tests now.

Last edited 5 years ago by Pierre Labastie (previous) (diff)

comment:3 by Pierre Labastie, 5 years ago

Tests are as good as with GCC 5.

comment:4 by bdubbs@…, 5 years ago

Thanks for the updates. The final results do not look as imposing as the actual amount of real effort that goes into creating the instructions. I've gone through the same things with ffmpeg and imagemagick. I was also able to get ff to build so that will go into the book later today.

Hopefully we can soon get back to doing the easier updates that have seemed to accumulate lately.

comment:5 by Pierre Labastie, 5 years ago

Resolution: fixed
Status: assignedclosed

Fixed at r17333

Note: See TracTickets for help on using tickets.