Hello,
I compiled japhar0.08 with static libraries on a Solaris 2.5.1 thanks to
this patch. But I don't have all the stubs needed to run japhar with JDK
1.1. I can't obtain them by using make stubs_11 because japharh crashes.
Could anyone give me all the stubs I need ?
Thanks.
David Le Jolly.
PS: do you intend to give us soon a new release of Japhar?
On Tue, 13 Apr 1999, Christophe Lizzi wrote:
>
> Hi, all,
>
> Here is a patch that makes some cleanup in the way dynamic libraries,
> stubs, and stub mappings are handled by Japhar.
>
> - the various dll checks are moved from arch/dynamic_loading.c
> to arch/dll.h (and not to include/dynamic_loading.h, in order to keep
> the platform-specific stuff under the arch subdirectory).
>
> dll.h determines if we *have* dlls (i.e. have headers, have functs),
> if we *can* use them (i.e. not profiling or no working libffi),
> then if we *want* to use them (i.e. shared libs not explicitly disabled).
>
> This file is also included in include/dynamic_loading.h,
> so the same tests can be applied both to dynamic_loading.c
> and to lib/libnative/*/*stubs.c.
>
> - a new target is added to lib/libnative/*/Makefile.am,
> in order to build JDK1.1 stubs in a specific _stubs-1.1 subdirectory.
>
> (yes, there is truly someone that uses a statically-linked Japhar
> with JDK1.1.5...)
>
> - all stub mappings have been cleaned.
>
> The template used for each class looks like:
>
> MAPPINGS( all_methods_common_to_JDK1.1_and_JDK1.2 );
> #ifdef JDK1_1
> MAPPINGS( methods_specific_to_JDK1.1 );
> #else /* assume JDK1.2 */
> MAPPINGS( methods_specific_to_JDK1.2 );
> #endif
>
> Classpath-specific methods have not been considered, though.
>
> configure.in has been modified accordingly. Some checks have also
> been added to enable static linking on Solaris.
>
> Two minor problems are also fixed:
>
> - arch/thread_test and arch/monitor_test coredump because
> some code added to arch/threads.c was not protected against
> null 'env' pointers.
>
> - XtOpenApplication() is not provided by Sun OpenWindows
> (at least on Solaris/Sparc 2.5.1).
> The one added to lib/libnative/sun.awt.motif/common.c
> comes from XFree86 3.3.3.
>
> (AWT does not work on Solaris, anyway. It seems to loop
> in XtAppPending()...)
>
> The enclosed patch can be applied against the current shapshot.
>
> Hope this helps,
>
> --Christophe
>
> PS: BTW, on Linux, if an exception is raised, Japhar seems to loop
> repeatedly, dumping stack frames... This avoids to smoothly
> run the test suite. It occurs with the 0.08 release or
> with the current snapshot. Any idea to correct this problem ?