[REVIEW-3-5] fdo#49580: Fix bean after gbuild'ification
Stephan Bergmann
sbergman at redhat.com
Mon May 7 08:51:37 PDT 2012
Please consider the below fix for
<https://bugs.freedesktop.org/show_bug.cgi?id=49580> "OfficeBean.jar
references officebean.dll not officebeanlo.dll" for inclusion in 3.5.
Thanks,
Stephan
On 05/07/2012 05:03 PM, Stephan Bergmann wrote:
> commit 708229dc96533b6f165b82ce4d9e07537d1ce8b1
> Author: Stephan Bergmann<sbergman at redhat.com>
> Date: Mon May 7 16:54:43 2012 +0200
>
> fdo#49580: Fix bean after gbuild'ification
>
> 4478b739ddade09425d496cbddee1542fdfd5e9b "convert bean to gbuild and add to
> tail_build" broke the following:
> * The name of the officebean dynamic library must not be changed (by adding the
> "lo" extension), as code in officebean.jar uses it in NativeLibraryLoader.
> * With gbuild's per-default hidden visibility, JNIEXPORT functions must instead
> use SAL_DLLPUBLIC_EXPORT. (Windows-only code in bean/native/win32/ should be
> safe to continue using JNIEXPORT.)
>
> Change-Id: I I3c312dd05c90421ba0c726496b7149a26d155604
>
> diff --git a/Repository.mk b/Repository.mk
> index 68a8890..900b538 100644
> --- a/Repository.mk
> +++ b/Repository.mk
> @@ -218,7 +218,6 @@ $(eval $(call gb_Helper_register_libraries,OOOLIBS, \
> forui \
> odbc \
> odbcbase \
> - officebean \
> oox \
> ooxml \
> sdbc \
> @@ -409,6 +408,7 @@ $(eval $(call gb_Helper_register_libraries,PLAINLIBS_OOO, \
> localedata_euro \
> localedata_others \
> mcnttype \
> + officebean \
> package2 \
> scriptframe \
> smoketest \
> diff --git a/bean/native/unix/com_sun_star_beans_LocalOfficeWindow.c b/bean/native/unix/com_sun_star_beans_LocalOfficeWindow.c
> index a45b49e..cc35283 100644
> --- a/bean/native/unix/com_sun_star_beans_LocalOfficeWindow.c
> +++ b/bean/native/unix/com_sun_star_beans_LocalOfficeWindow.c
> @@ -26,6 +26,8 @@
> *
> ************************************************************************/
>
> +#include "sal/config.h"
> +
> #include<X11/Xlib.h>
> #include<X11/Xutil.h>
> #include<X11/Intrinsic.h>
> @@ -40,7 +42,7 @@
> #include "jawt_md.h"
> #include "jawt.h"
>
> -/*#include "../inc/com_sun_star_comp_beans_LocalOfficeWindow.h"*/
> +#include "sal/types.h"
>
> #if defined assert
> #undef assert
> @@ -55,7 +57,7 @@
> #define SYSTEM_MAC 5
> #define SYSTEM_XWINDOW 6
>
> -JNIEXPORT jlong JNICALL Java_com_sun_star_comp_beans_LocalOfficeWindow_getNativeWindow
> +SAL_DLLPUBLIC_EXPORT jlong JNICALL Java_com_sun_star_comp_beans_LocalOfficeWindow_getNativeWindow
> (JNIEnv * env, jobject obj_this);
>
> /*****************************************************************************/
> @@ -64,7 +66,7 @@ JNIEXPORT jlong JNICALL Java_com_sun_star_comp_beans_LocalOfficeWindow_getNative
> * Method: getNativeWindowSystemType
> * Signature: ()I
> */
> -JNIEXPORT jint JNICALL Java_com_sun_star_beans_LocalOfficeWindow_getNativeWindowSystemType
> +SAL_DLLPUBLIC_EXPORT jint JNICALL Java_com_sun_star_beans_LocalOfficeWindow_getNativeWindowSystemType
> (JNIEnv * env, jobject obj_this)
> {
> (void) env; /* avoid warning about unused parameter */
> @@ -79,7 +81,7 @@ JNIEXPORT jint JNICALL Java_com_sun_star_beans_LocalOfficeWindow_getNativeWindow
> * Method: getNativeWindow
> * Signature: ()J
> */
> -JNIEXPORT jlong JNICALL Java_com_sun_star_beans_LocalOfficeWindow_getNativeWindow
> +SAL_DLLPUBLIC_EXPORT jlong JNICALL Java_com_sun_star_beans_LocalOfficeWindow_getNativeWindow
> (JNIEnv * env, jobject obj_this)
> {
> (void) env; /* avoid warning about unused parameter */
> diff --git a/bean/native/unix/com_sun_star_comp_beans_LocalOfficeWindow.c b/bean/native/unix/com_sun_star_comp_beans_LocalOfficeWindow.c
> index 5b36110..8510dc3 100644
> --- a/bean/native/unix/com_sun_star_comp_beans_LocalOfficeWindow.c
> +++ b/bean/native/unix/com_sun_star_comp_beans_LocalOfficeWindow.c
> @@ -26,6 +26,8 @@
> *
> ************************************************************************/
>
> +#include "sal/config.h"
> +
> #include<X11/Xlib.h>
> #include<X11/Xutil.h>
> #include<X11/Intrinsic.h>
> @@ -40,6 +42,7 @@
> #include "jawt_md.h"
> #include "jawt.h"
>
> +#include "sal/types.h"
>
> #define SYSTEM_WIN32 1
> #define SYSTEM_WIN16 2
> @@ -71,7 +74,7 @@ static void ThrowException(JNIEnv * env, char const * type, char const * msg) {
> * Method: getNativeWindowSystemType
> * Signature: ()I
> */
> -JNIEXPORT jint JNICALL Java_com_sun_star_comp_beans_LocalOfficeWindow_getNativeWindowSystemType
> +SAL_DLLPUBLIC_EXPORT jint JNICALL Java_com_sun_star_comp_beans_LocalOfficeWindow_getNativeWindowSystemType
> (JNIEnv * env, jobject obj_this)
> {
> (void) env; /* avoid warning about unused parameter */
> @@ -86,7 +89,7 @@ JNIEXPORT jint JNICALL Java_com_sun_star_comp_beans_LocalOfficeWindow_getNativeW
> * Method: getNativeWindow
> * Signature: ()J
> */
> -JNIEXPORT jlong JNICALL Java_com_sun_star_comp_beans_LocalOfficeWindow_getNativeWindow
> +SAL_DLLPUBLIC_EXPORT jlong JNICALL Java_com_sun_star_comp_beans_LocalOfficeWindow_getNativeWindow
> (JNIEnv * env, jobject obj_this)
> {
> jboolean result;
> diff --git a/scp2/source/ooo/file_library_ooo.scp b/scp2/source/ooo/file_library_ooo.scp
> index 63b2f8f..83f125e 100644
> --- a/scp2/source/ooo/file_library_ooo.scp
> +++ b/scp2/source/ooo/file_library_ooo.scp
> @@ -914,7 +914,16 @@ STD_LIB_FILE( gid_File_Lib_Offacc, offacc)
> #ifdef SOLAR_JAVA
> #ifndef MACOSX
>
> -STD_LIB_FILE(gid_File_Lib_Officebean, officebean)
> +File gid_File_Lib_Officebean
> + TXT_FILE_BODY;
> + Styles = (PACKED);
> + Dir = SCP2_OOO_BIN_DIR;
> + #ifdef UNX
> + Name = STRING(CONCAT2(libofficebean,UNXSUFFIX));
> + #else
> + Name = "officebean.dll";
> + #endif
> +End
>
> #endif
> #endif
More information about the LibreOffice
mailing list