JDK8 build on AIX - status?
Volker Simonis
volker.simonis at gmail.com
Mon May 13 02:16:45 PDT 2013
Yes, you're right. I fixed that and I can build the whole JDK8 now as I
wrote in my last mail.
Thanks,
Volker
On Fri, May 10, 2013 at 1:44 PM, Andrew Hughes <gnu.andrew at redhat.com>wrote:
> ----- Original Message -----
> > I can build now up to libsctp.so which seems to be new in JDK8 (that's
> the
> > 25th out of 33 shared libraries).
>
> It's new to 7, if it's what I think it is:
>
> make/com/sun/nio/sctp/Makefile
>
> It's guarded by:
>
> ifneq ($(PLATFORM), windows)
>
> which may not be the best conditional if AIX doesn't support it either...
>
> > Hope to finish the build tomorrow. Stay tuned..
> >
> >
> > On Tue, May 7, 2013 at 1:54 PM, Volker Simonis
> > <volker.simonis at gmail.com>wrote:
> >
> > > Yes, that was the failure I was seeing yesterday. It's caused by the
> wrong
> > > '-MMD' option to xlc (which have to be fixed in toolchain.m4 as I wrote
> > > before).
> > >
> > > I've got past this error and fixed several others. I'll post my changes
> > > later today with the status of my build...
> > >
> > >
> > >
> > > On Tue, May 7, 2013 at 1:06 PM, Steve Poole
> > > <spoole at linux.vnet.ibm.com>wrote:
> > >
> > >> ok - added your patch and now have a build that fails with below - is
> > >> the same as you're seeing?
> > >>
> > >> echo > /dev/null "Compiling genSocketOptionRegistry.c (for
> > >> genSocketOptionRegistry)"
> > >> /usr/vac/bin/xlc -DTHIS_FILE='"genSocketOptionRegistry.c"' -c -MMD
> -MF
> > >>
> /home/spoole/jenkins/workspace/openjdk.ppcaix.jdk8.aix.ppc_64/build/aix-ppc64-normal-server-slowdebug/jdk/gensrc/genSocketOptionRegistry/genSocketOptionRegistry.d
> > >> -o
> > >>
> /home/spoole/jenkins/workspace/openjdk.ppcaix.jdk8.aix.ppc_64/build/aix-ppc64-normal-server-slowdebug/jdk/gensrc/genSocketOptionRegistry/genSocketOptionRegistry.o
> > >>
> /home/spoole/jenkins/workspace/openjdk.ppcaix.jdk8.aix.ppc_64/jdk/src/share/native/sun/nio/ch/genSocketOptionRegistry.c
> > >> /usr/vac/bin/xlc: 1501-208 (S) command option D is missing a
> subargument
> > >>
> > >>
> > >>
> > >> On 7 May 2013, at 09:33, Volker Simonis <volker.simonis at gmail.com>
> wrote:
> > >>
> > >>
> > >>
> > >>
> > >> On Tue, May 7, 2013 at 9:40 AM, Steve Poole
> > >> <spoole at linux.vnet.ibm.com>wrote:
> > >>
> > >>>
> > >>> On 6 May 2013, at 18:16, Volker Simonis <volker.simonis at gmail.com>
> > >>> wrote:
> > >>>
> > >>> > Hi,
> > >>> >
> > >>> > I've started today to have a look at the new, configure based JDK8
> > >>> build on AIX.
> > >>> >
> > >>> > On AIX 7.1 with XLC 12 and the same set-up as described in our
> > >>> README-ppc.html for JDK7 (plus the additional installation of
> 'mktemp'
> > >>> from
> > >>> http://www.lunch.org.uk/aix/rpms/mktemp-1.5-1.aix5.2.ppc.rpm) I
> could
> > >>> successfully configure the build with the following command line:
> > >>> >
> > >>> > bash /usr/work/d046063/OpenJDK/ppc-aix-port/jdk8/configure
> > >>>
> --with-boot-jdk=/usr/work/openjdk/nb/rs6000_64/last_known_good/output-jdk7u/j2sdk-image
> > >>> --with-jvm-variants=server --with-jvm-interpreter=cpp
> > >>> --with-debug-level=slowdebug --with-extra-cflags=-q64
> > >>> --with-extra-cxxflags=-q64 CFLAGS=-q64 CXXFLAGS=-q64
> > >>> --with-cups-include=/opt/freeware/include
> > >>> >
> > >>> That doesn't work for me fails with:
> > >>>
> > >>> checking build system type... config.sub: missing argument
> > >>> Try `config.sub --help' for more information.
> > >>> configure: error: /bin/sh ./common/autoconf/build-aux/config.sub
> failed
> > >>>
> > >>>
> > >> Have you recreated generated-configure.sh?
> > >>
> > >>
> > >>>
> > >>> I will try a completely new clone and build...
> > >>>
> > >>>
> > >> Yes, please regenerate generated-configure.sh and retry. For your
> > >> convenience I've attached my new generated-configure.sh to this mail.
> > >>
> > >>
> > >>> > The build runs successfully until it reaches the JDK part where it
> > >>> stops because of incorrect compiler settings. With the following
> little
> > >>> patch I get further until the compilation of
> 'genSocketOptionRegistry.c':
> > >>> >
> > >>> > diff -r e199be36af79 common/autoconf/toolchain.m4
> > >>> > --- a/common/autoconf/toolchain.m4 Thu May 02 16:22:31 2013
> +0100
> > >>> > +++ b/common/autoconf/toolchain.m4 Mon May 06 19:09:16 2013
> +0200
> > >>> > @@ -569,6 +569,29 @@
> > >>> > POST_STRIP_CMD="$STRIP -x"
> > >>> > POST_MCS_CMD="$MCS -d -a \"JDK $FULL_VERSION\""
> > >>> > fi
> > >>> > + if test "x$OPENJDK_TARGET_OS" = xaix; then
> > >>> > + COMPILER_NAME=xlc
> > >>> > + PICFLAG="-qpic=large"
> > >>> > + LIBRARY_PREFIX=lib
> > >>> > + SHARED_LIBRARY='lib[$]1.so'
> > >>> > + STATIC_LIBRARY='lib[$]1.a'
> > >>> > + SHARED_LIBRARY_FLAGS="-qmkshrobj"
> > >>> > + SHARED_LIBRARY_SUFFIX='.so'
> > >>> > + STATIC_LIBRARY_SUFFIX='.a'
> > >>> > + OBJ_SUFFIX='.o'
> > >>> > + EXE_SUFFIX=''
> > >>> > + SET_SHARED_LIBRARY_NAME=''
> > >>> > + SET_SHARED_LIBRARY_MAPFILE=''
> > >>> > + C_FLAG_REORDER=''
> > >>> > + CXX_FLAG_REORDER=''
> > >>> > + SET_SHARED_LIBRARY_ORIGIN=''
> > >>> > + SET_EXECUTABLE_ORIGIN=""
> > >>> > + CFLAGS_JDK=""
> > >>> > + CXXFLAGS_JDK=""
> > >>> > + CFLAGS_JDKLIB_EXTRA=''
> > >>> > + POST_STRIP_CMD="$STRIP -x"
> > >>> > + POST_MCS_CMD=""
> > >>> > + fi
> > >>> >
> > >>> > The next task would now be to integrate all the needed compiler
> flags
> > >>> for xlc into 'toolchain.m4'.
> > >>> >
> > >>> > Did you already start this task and if yes, how far have you
> reached
> > >>> with the build.
> > >>>
> > >>> Yes - we did do the basics (including teaching toolschain about xlc
> )
> > >>>
> > >>>
> > >>>
> http://mail.openjdk.java.net/pipermail/ppc-aix-port-dev/2013-February/000322.html
> > >>>
> > >>>
> > >> Yes, I know but that's not enough. The error you reported in that mail
> > >> ("This will fail by claiming *** No rule to make target
> > >>
> `<snip/>/jdk8/build/aix-ppc64-normal-server-release/jdk/lib/ppc64/server/jsig',
> > >> needed by `all'. Stop.") is occurs because the build doesn't know the
> > >> shared library endings on AIX (i.e. it looks for 'jsig' instead of
> > >> 'jsig.so'). This is fixed by the snippet I posted in my previous mail
> but
> > >> that's just a starting point as well. We have to set all the required
> xlc
> > >> options in toolchain.m4 to get further. The bad thing is that some
> options
> > >> (e.g. -MMD -MF) are set unconditionally in toolchain.m4 and then
> refined
> > >> based on plattform and compiler. So if we do nothing, the xlc build
> on AIX
> > >> uses these options and that's why it currently fails.
> > >>
> > >>
> > >>> The codebase has moved on a little since then so we have a couple
> more
> > >>> changes to come for src/solaris/native/common/jdk_util_md.h and
> > >>> src/solaris/native/java/io/io_util_md.c
> > >>> b/src/solaris/native/java/io/io_util_md.c
> > >>>
> > >>> Let me make sure I can reproduce your situation and then lets talk
> about
> > >>> the next changes required..
> > >>>
> > >>
> > >> So I'll start with the compiler settings for xlc in toolchain.m4
> > >>
> > >> > If you have any build related changes, could you please share them
> on
> > >>> the list in a timely manner to avoid doubling the work and to
> possibly
> > >>> discuss them before submission.
> > >>> >
> > >>> > Thank you and best regards,
> > >>> > Volker
> > >>> >
> > >>>
> > >>>
> > >> <generated-configure.sh>
> > >>
> > >>
> > >>
> > >
> >
>
> --
> Andrew :)
>
> Free Java Software Engineer
> Red Hat, Inc. (http://www.redhat.com)
>
> PGP Key: 248BDC07 (https://keys.indymedia.org/)
> Fingerprint = EC5A 1F5E C0AD 1D15 8F1F 8F91 3B96 A578 248B DC07
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mail.openjdk.java.net/pipermail/ppc-aix-port-dev/attachments/20130513/eed52dbe/attachment.html
More information about the ppc-aix-port-dev
mailing list