8201226 missing JNIEXPORT / JNICALL at some places in function declarations/implementations - was : RE: missing JNIEXPORT / JNICALL at some places in function declarations/implementations

Baesken, Matthias matthias.baesken at sap.com
Wed Apr 11 07:44:13 UTC 2018


> 
> JIMAGE_FindResource doesn't have JNICALL modifier now, does it?
>

Hi  Alexey, yes that's true .

> Please remove JNIEXPORT from main():
> src/java.base/share/native/launcher/main.c
> src/jdk.pack/share/native/unpack200/main.cpp

I would  prefer to keep it for now .
I notice  some  comments  in our SAPJVM code base  about needing  JNIEXPORT for  main  for Solaris  (we were running  in SAPJVM without  mapfiles in the past already).
Maybe  that’s related to  

src/java.base/unix/native/libjli/java_md_solinux.c

where main  is dlsym-ed : fptr = (int (*)())dlsym(RTLD_DEFAULT, "main");
but I am not sure about this.
So I better keep  the JNIEXPORT  for the main functions,   could be removed in another  cleanup  if really needed.


> You can reference both yourself and me as
> Contributed-by: mbaesken, aivanov
> when pushing the changeset if you don't mind.
>


Sure .

Best regards, Matthias


> -----Original Message-----
> From: Alexey Ivanov [mailto:alexey.ivanov at oracle.com]
> Sent: Dienstag, 10. April 2018 21:34
> To: Baesken, Matthias <matthias.baesken at sap.com>; Magnus Ihse Bursie
> <magnus.ihse.bursie at oracle.com>
> Cc: build-dev <build-dev at openjdk.java.net>; Doerr, Martin
> <martin.doerr at sap.com>
> Subject: Re: 8201226 missing JNIEXPORT / JNICALL at some places in function
> declarations/implementations - was : RE: missing JNIEXPORT / JNICALL at
> some places in function declarations/implementations
> 
> Hi Matthias,
> 
> On 10/04/2018 11:14, Baesken, Matthias wrote:
> > Hello,  I  had to  do another small adjustment  to make jimage.hpp/cpp
> match.    Please review :
> >
> > http://cr.openjdk.java.net/~mbaesken/webrevs/8201226.2/
> 
> JIMAGE_FindResource doesn't have JNICALL modifier now, does it?
> 
> I've successfully built 32 bit Windows with your patch.
> 
> 
> Please remove JNIEXPORT from main():
> src/java.base/share/native/launcher/main.c
> src/jdk.pack/share/native/unpack200/main.cpp
> 
> > With the latest webrev I could finally    build    jdk/jdk   successfully on both
> win32bit   and win64 bit .
> >
> >
> >
> > Thanks again  to Alexey  to provide  the   incorporated patch .
> 
> You can reference both yourself and me as
> Contributed-by: mbaesken, aivanov
> when pushing the changeset if you don't mind.
> 
> 
> Regards,
> Alexey
> 
> >
> >
> > Best regards, Matthias
> >
> >
> >
> >> -----Original Message-----
> >> From: Alexey Ivanov [mailto:alexey.ivanov at oracle.com]
> >> Sent: Montag, 9. April 2018 17:14
> >> To: Baesken, Matthias <matthias.baesken at sap.com>; Magnus Ihse
> Bursie
> >> <magnus.ihse.bursie at oracle.com>
> >> Cc: build-dev <build-dev at openjdk.java.net>; Doerr, Martin
> >> <martin.doerr at sap.com>
> >> Subject: Re: 8201226 missing JNIEXPORT / JNICALL at some places in
> function
> >> declarations/implementations - was : RE: missing JNIEXPORT / JNICALL at
> >> some places in function declarations/implementations
> >>
> >> Hi Matthias,
> >>
> >> On 09/04/2018 15:38, Baesken, Matthias wrote:
> >>> Hi  Alexey,    thanks  for  the diff provided by you, and  for  the
> explanations
> >> .
> >>> I created  a second  webrev :
> >>>
> >>> http://cr.openjdk.java.net/~mbaesken/webrevs/8201226.1/
> >>>
> >>> -   it  adds  the diff  provided by you    (hope that’s fine with you)
> >> Yes, that's fine with me.
> >> There could be only one author ;)
> >>
> >>> -    changes  2 launchers    src/java.base/share/native/launcher/main.c
> and
> >> src/jdk.pack/share/native/unpack200/main.cpp    where we face similar
> >> issues after mapfile removal for exes
> >>
> >> I'd rather remove both JNIEXPORT and JNICALL from main().
> >> It wasn't exported, and it shouldn't be.
> >>
> >> Regards,
> >> Alexey
> >>
> >>> Best regards , Matthias


More information about the build-dev mailing list