Not using NativeActivity means no lo_main() stuff used either
Hopefully also fixes build for iOS by re-introducing checks for DESKTOP.
Also this commit partially reverts 52a8744afe
.
Change-Id: Ie94c771b72ba138bb0481b054285916618baf6eb
This commit is contained in:
@@ -94,13 +94,4 @@ ifeq ($(ENABLE_TELEPATHY),TRUE)
|
||||
$(eval $(call gb_Library_use_libraries,sofficeapp,tubes))
|
||||
endif
|
||||
|
||||
#
|
||||
# We need the lo_main symbol for our boostrap loader
|
||||
#
|
||||
ifeq ($(OS),ANDROID)
|
||||
$(eval $(call gb_Library_add_cobjects,sofficeapp,\
|
||||
desktop/source/app/main \
|
||||
))
|
||||
endif
|
||||
|
||||
# vim: set ts=4 sw=4 et:
|
||||
|
@@ -181,7 +181,7 @@ $(eval $(call gb_Library_add_exception_objects,sal,\
|
||||
sal/osl/unx/module \
|
||||
sal/osl/unx/process \
|
||||
sal/osl/unx/process_impl \
|
||||
sal/osl/unx/salinit \
|
||||
$(if $(filter DESKTOP,$(BUILD_TYPE)), sal/osl/unx/salinit) \
|
||||
sal/osl/unx/uunxapi \
|
||||
))
|
||||
$(eval $(call gb_Library_add_cobjects,sal,\
|
||||
|
@@ -31,7 +31,8 @@ $(eval $(call gb_Module_Module,sal))
|
||||
$(eval $(call gb_Module_add_targets,sal,\
|
||||
CustomTarget_generated \
|
||||
CustomTarget_sal_allheaders \
|
||||
Executable_cppunittester \
|
||||
$(if $(filter DESKTOP,$(BUILD_TYPE)), \
|
||||
Executable_cppunittester) \
|
||||
$(if $(filter $(OS),ANDROID), \
|
||||
Library_lo-bootstrap) \
|
||||
Library_sal \
|
||||
@@ -45,13 +46,14 @@ $(eval $(call gb_Module_add_targets,sal,\
|
||||
))
|
||||
|
||||
ifneq (,$(filter DESKTOP,$(BUILD_TYPE)))
|
||||
|
||||
$(eval $(call gb_Module_add_targets,sal,\
|
||||
Executable_osl_process_child \
|
||||
))
|
||||
|
||||
$(eval $(call gb_Module_add_check_targets,sal,\
|
||||
CppunitTest_sal_osl_process \
|
||||
))
|
||||
endif
|
||||
|
||||
$(eval $(call gb_Module_add_check_targets,sal,\
|
||||
$(if $(filter TRUE,$(DISABLE_DYNLOADING)),,CppunitTest_Module_DLL) \
|
||||
@@ -88,6 +90,8 @@ $(eval $(call gb_Module_add_check_targets,sal,\
|
||||
CppunitTest_sal_rtl_math \
|
||||
))
|
||||
|
||||
endif
|
||||
|
||||
# CppunitTest_sal_osl_pipe has circular dependency on unotest
|
||||
# $(eval $(call gb_Module_add_subsequentcheck_targets,sal,\
|
||||
CppunitTest_sal_osl_pipe \
|
||||
|
@@ -38,25 +38,7 @@ SAL_DLLPUBLIC void SAL_CALL sal_detail_deinitialize();
|
||||
|
||||
#if defined IOS || defined ANDROID
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" SAL_DLLPUBLIC_EXPORT void lo_main(int argc, char **argv);
|
||||
#endif
|
||||
|
||||
#define SAL_MAIN_WITH_ARGS_IMPL \
|
||||
SAL_DLLPUBLIC_EXPORT void lo_main(int argc, char **argv) \
|
||||
{ \
|
||||
sal_detail_initialize(argc, argv); \
|
||||
sal_main_with_args(argc, argv); \
|
||||
sal_detail_deinitialize(); \
|
||||
}
|
||||
|
||||
#define SAL_MAIN_IMPL \
|
||||
SAL_DLLPUBLIC_EXPORT void lo_main(int argc, char **argv) \
|
||||
{ \
|
||||
sal_detail_initialize(argc, argv); \
|
||||
sal_main(); \
|
||||
sal_detail_deinitialize(); \
|
||||
}
|
||||
#error No code that includes this should be built for iOS or Android
|
||||
|
||||
#else
|
||||
|
||||
|
@@ -104,26 +104,10 @@ oslProcessError SAL_CALL osl_bootstrap_getExecutableFile_Impl (
|
||||
{
|
||||
oslProcessError result = osl_Process_E_NotFound;
|
||||
|
||||
#if defined(ANDROID) && !defined(DISABLE_DYNLOADING)
|
||||
/* On Android we in theory want the address of the "lo_main()"
|
||||
* function, as that is what corresponds to "main()" in
|
||||
* LibreOffice programs on normal desktop OSes.
|
||||
*
|
||||
* But that is true only for apps with a "native activity", using
|
||||
* <sal/main.h> and the org.libreoffice.android.Bootstrap
|
||||
* mechanism. For more normal (?) Android apps that just use
|
||||
* LibreOffice libraries (components) where the main program is in
|
||||
* Java, that just use LibreOffice libraries, there is no
|
||||
* lo_main(). (Note that we don't know for sure yet how
|
||||
* complicated it might be to write such Android apps...)
|
||||
*
|
||||
* Maybe best to just pick some function in liblo-bootstrap.so
|
||||
* which also such Java apps *must* load as the very first
|
||||
* LibreOffice native library. We store all LibreOffice native
|
||||
* shared libraries an app uses in the same folder anyway, so it
|
||||
* doesn't really matter.
|
||||
*/
|
||||
void * addr = (void *) &lo_dlopen;
|
||||
#ifdef ANDROID
|
||||
/* Now with just a single DSO, this one from lo-bootstrap.c is as good as
|
||||
* any */
|
||||
void * addr = dlsym (RTLD_DEFAULT, "JNI_OnLoad");
|
||||
#else
|
||||
/* Determine address of "main()" function. */
|
||||
void * addr = dlsym (RTLD_DEFAULT, "main");
|
||||
|
@@ -24,8 +24,9 @@ $(eval $(call gb_Module_add_targets,vcl,\
|
||||
CustomTarget_afm_hash \
|
||||
Library_vcl \
|
||||
Package_inc \
|
||||
StaticLibrary_vclmain \
|
||||
Executable_ui-previewer \
|
||||
$(if $(filter DESKTOP,$(BUILD_TYPE)), \
|
||||
StaticLibrary_vclmain \
|
||||
Executable_ui-previewer) \
|
||||
UI_vcl \
|
||||
))
|
||||
|
||||
|
Reference in New Issue
Block a user