5510127e89
Sorry for the large unstructured commit. But hey, the Android code is experimental so far. Extract the native lo-bootstrap code into a fairly normal library built in sal. (Previously it was the JNI part of the "Bootstrap" app.) Just linkink normally to liblo-bootstrap from C++ code that uses it works fine, no need to do a dlsym lookup. Bootstrap is still a subclass of NativeActivity and can thus still be used as an "app" (to start unit tests, or whatever), but can also be used from some other app's Java code to just get access to the lo-bootstrap native methods. Introduce a new top-level "module", android, for Bootstrap and the experiments with DocumentLoader. Note that the experimental DocumentLoader app still crashes. It can't create the com.sun.star.frame.Desktop instance. I spent lots of time debugging in the painfully inadequate ndk-gdb. (Even the newer gdb build from the "mingw-and-ndk" project is quite crappy in many ways.) I should really experiment with corresponding code on a normal platform first before even trying on Android. Basically, I think that if I just can get the concept of Java code that instantiates and uses LO components *in-process* working on a normal desktop platform, it should work on Android, too.
178 lines
4.4 KiB
Makefile
178 lines
4.4 KiB
Makefile
#*************************************************************************
|
|
#
|
|
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
|
#
|
|
# Copyright 2000, 2010 Oracle and/or its affiliates.
|
|
#
|
|
# OpenOffice.org - a multi-platform office productivity suite
|
|
#
|
|
# This file is part of OpenOffice.org.
|
|
#
|
|
# OpenOffice.org is free software: you can redistribute it and/or modify
|
|
# it under the terms of the GNU Lesser General Public License version 3
|
|
# only, as published by the Free Software Foundation.
|
|
#
|
|
# OpenOffice.org is distributed in the hope that it will be useful,
|
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
# GNU Lesser General Public License version 3 for more details
|
|
# (a copy is included in the LICENSE file that accompanied this code).
|
|
#
|
|
# You should have received a copy of the GNU Lesser General Public License
|
|
# version 3 along with OpenOffice.org. If not, see
|
|
# <http://www.openoffice.org/license.html>
|
|
# for a copy of the LGPLv3 License.
|
|
#
|
|
#*************************************************************************
|
|
|
|
PRJ=..
|
|
|
|
PRJNAME=sal
|
|
TARGET=sal
|
|
|
|
NO_BSYMBOLIC=TRUE
|
|
NO_DEFAULT_STL=TRUE
|
|
|
|
USE_LDUMP2=TRUE
|
|
USE_DEFFILE=TRUE
|
|
|
|
.IF "$(GUI)"=="UNX"
|
|
TARGETTYPE=CUI
|
|
.ENDIF # UNX
|
|
|
|
UNIXVERSIONNAMES=UDK
|
|
|
|
# --- Settings -----------------------------------------------------
|
|
|
|
.INCLUDE : settings.mk
|
|
|
|
CFLAGS+= $(LFS_CFLAGS)
|
|
CXXFLAGS+= $(LFS_CFLAGS)
|
|
|
|
.IF "$(depend)" == ""
|
|
|
|
# --- Files --------------------------------------------------------
|
|
|
|
# disable check for PIC code as it would complain about
|
|
# hand coded assembler
|
|
CHECKFORPIC=
|
|
|
|
.IF "$(header)" == ""
|
|
|
|
LIB1TARGET=$(SLB)$/$(TARGET).lib
|
|
LIB1FILES= \
|
|
$(SLB)$/oslall.lib \
|
|
$(SLB)$/cpposl.lib \
|
|
$(SLB)$/cpprtl.lib \
|
|
$(SLB)$/textenc.lib
|
|
|
|
.IF "$(COM)" == "MSC"
|
|
SHL1TARGET= $(TARGET)
|
|
SHL1IMPLIB= i$(TARGET)
|
|
.ELSE
|
|
SHL1TARGET= uno_$(TARGET)
|
|
SHL1IMPLIB= uno_$(TARGET)
|
|
.ENDIF
|
|
SHL1VERSIONMAP= $(TARGET).map
|
|
SHL1RPATH=URELIB
|
|
|
|
.IF "$(GUI)"=="WNT"
|
|
|
|
.IF "$(COM)"=="GCC"
|
|
UWINAPILIB= -luwinapi
|
|
.ELSE
|
|
UWINAPILIB= $(LB)$/uwinapi.lib
|
|
.ENDIF
|
|
|
|
SHL1STDLIBS= \
|
|
$(UWINAPILIB)\
|
|
$(ADVAPI32LIB)\
|
|
$(WS2_32LIB)\
|
|
$(MPRLIB)\
|
|
$(SHELL32LIB)\
|
|
$(COMDLG32LIB)\
|
|
$(USER32LIB)\
|
|
$(OLE32LIB)
|
|
.IF "$(COM)"=="GCC"
|
|
MINGWSSTDOBJ=
|
|
MINGWSSTDENDOBJ=
|
|
.ENDIF
|
|
.ENDIF # WNT
|
|
|
|
.IF "$(GUI)"=="UNX"
|
|
.IF "$(OS)"=="SOLARIS"
|
|
# libposix4.so (SunOS 5.6) <-> librt.so (SunOS >= 5.7)
|
|
SHL1STDLIBS= -Bdynamic -ldl -lpthread -lposix4 -lsocket -lnsl
|
|
.IF "$(COM)" == "C50"
|
|
SHL1STDLIBS+= -z allextract -staticlib=Crun -z defaultextract
|
|
.ENDIF # C50
|
|
.ENDIF # SOLARIS
|
|
.ENDIF # UNX
|
|
|
|
.IF "$(OS)"=="MACOSX"
|
|
SHL1STDLIBS+=-framework CoreFoundation -framework Carbon
|
|
.ENDIF
|
|
|
|
.IF "$(OS)" == "ANDROID"
|
|
SHL1STDLIBS+=-llo-bootstrap
|
|
.ENDIF
|
|
|
|
SHL1LIBS+=$(SLB)$/$(TARGET).lib
|
|
|
|
.IF "$(linkinc)" != ""
|
|
SHL11FILE=$(MISC)$/sal.slo
|
|
.ELSE
|
|
.IF "$(GUI)"=="UNX"
|
|
SHL1OBJS=
|
|
.ELSE
|
|
.IF "$(GUI)$(COM)"!="WNTGCC"
|
|
SHL1OBJS= \
|
|
$(SLO)$/dllentry.obj
|
|
.ENDIF # WNTGCC
|
|
.ENDIF # UNX
|
|
.ENDIF # lincinc
|
|
|
|
SHL1DEPN=
|
|
SHL1DEF= $(MISC)$/$(SHL1TARGET).def
|
|
|
|
DEF1NAME= $(SHL1TARGET)
|
|
|
|
# --- Coverage -----------------------------------------------------
|
|
# LLA: 20040304 The follows lines are an additional which is only need if we run
|
|
# coverage tests. For normal test runs this feature is not used.
|
|
# For more information about coverage tests see:
|
|
# http://gcc.gnu.org/onlinedocs/gcc-3.0/gcc_8.html
|
|
#
|
|
# Why this additional?
|
|
# Anybody has decide to link sal with g++ instead of gcc.
|
|
#
|
|
.IF "$(TESTCOVERAGE)"!=""
|
|
.IF "$(GUI)"=="UNX"
|
|
.IF "$(COM)"=="GCC"
|
|
.IF "$(OS)"=="LINUX"
|
|
SHL1STDLIBS+=-lgcc
|
|
.ENDIF
|
|
.ENDIF
|
|
.ENDIF
|
|
.ENDIF
|
|
|
|
# --- Targets ------------------------------------------------------
|
|
|
|
.ENDIF # $(header) != ""
|
|
.ENDIF # $(depend) != ""
|
|
|
|
.INCLUDE : target.mk
|
|
|
|
.IF "$(SHL1TARGETN)" != ""
|
|
$(SHL1TARGETN) : $(OUT)$/inc$/udkversion.h
|
|
.ENDIF # "$(SHL1TARGETN)" != ""
|
|
|
|
$(OUT)$/inc$/udkversion.h:
|
|
echo '#ifndef _SAL_UDKVERSION_H_' > $@
|
|
echo '#define _SAL_UDKVERSION_H_' >> $@
|
|
echo '' >> $@
|
|
echo '#define SAL_UDK_MAJOR "$(UDK_MAJOR)"' >> $@
|
|
echo '#define SAL_UDK_MINOR "$(UDK_MINOR)"' >> $@
|
|
echo '#define SAL_UDK_MICRO "$(UDK_MICRO)"' >> $@
|
|
echo '' >> $@
|
|
echo '#endif' >> $@
|