[Libreoffice-commits] .: 5 commits - android/experimental fontconfig/makefile.mk fontconfig/prj freetype/makefile.mk freetype/prj redland/raptor redland/rasqal redland/redland RepositoryExternal.mk solenv/gbuild solenv/inc vcl/Library_vcl.mk

Tor Lillqvist tml at kemper.freedesktop.org
Thu Apr 19 15:04:18 PDT 2012


 RepositoryExternal.mk                                                                        |   38 +++++++++
 android/experimental/DocumentLoader/Makefile                                                 |   17 ++--
 android/experimental/DocumentLoader/src/org/libreoffice/android/examples/DocumentLoader.java |   39 +++++-----
 fontconfig/makefile.mk                                                                       |    4 -
 fontconfig/prj/d.lst                                                                         |    2 
 freetype/makefile.mk                                                                         |    2 
 freetype/prj/d.lst                                                                           |    2 
 redland/raptor/makefile.mk                                                                   |    8 +-
 redland/rasqal/makefile.mk                                                                   |    9 --
 redland/redland/makefile.mk                                                                  |    6 -
 solenv/gbuild/platform/ANDROID_ARM_GCC.mk                                                    |    2 
 solenv/inc/unxandr.mk                                                                        |    7 +
 vcl/Library_vcl.mk                                                                           |    1 
 13 files changed, 92 insertions(+), 45 deletions(-)

New commits:
commit 8be33aa1df252e25d8cd4e46fc65cf054479d5ce
Author: Tor Lillqvist <tlillqvist at suse.com>
Date:   Thu Apr 19 23:18:15 2012 +0300

    Drop libs that now are static, add a few missing ones

diff --git a/android/experimental/DocumentLoader/Makefile b/android/experimental/DocumentLoader/Makefile
index 2a67109..b81c0b5 100644
--- a/android/experimental/DocumentLoader/Makefile
+++ b/android/experimental/DocumentLoader/Makefile
@@ -57,16 +57,13 @@ copy-stuff:
 		   expwrap.uno \
 		   fastsax.uno \
 		   fileacc \
-		   fontconfig \
 		   forlo \
 		   foruilo \
-		   freetype \
 		   frmlo \
 		   fsstorage.uno \
 		   gcc3_uno \
 		   hwplo \
 		   i18nisolang1gcc3 \
-		   i18npaperlo \
 		   i18npool.uno \
 		   i18nutilgcc3 \
 		   icudatalo \
@@ -86,11 +83,9 @@ copy-stuff:
 		   lwpftlo \
 		   mergedlo \
 		   msfilterlo \
+		   mswordlo \
 		   msworkslo \
 		   ooxlo \
-		   raptor \
-		   rasqal \
-		   rdf \
 		   reflection.uno \
 		   reg \
 		   saxlo \
@@ -110,6 +105,7 @@ copy-stuff:
 		   textinstream.uno \
 		   tllo \
 		   ucbhelper4gcc3 \
+		   ucppkg1 \
 		   uno_cppu \
 		   uno_cppuhelpergcc3 \
 		   uno_sal \
@@ -119,6 +115,7 @@ copy-stuff:
 		   unoxmllo \
 		   utllo \
 		   vbahelperlo \
+		   vbaswobj.uno \
 		   vcllo \
 		   visioimportlo \
 		   wpftlo \
commit 9a42ca71049db83a6264cc026c53763b3a7a0b53
Author: Tor Lillqvist <tlillqvist at suse.com>
Date:   Thu Apr 19 21:45:14 2012 +0300

    Build the redland libs statically for Android
    
    They are only linked to libunordf anyway, so we reduce the number of
    shared libraries a bit this way.

diff --git a/RepositoryExternal.mk b/RepositoryExternal.mk
index b695b11..09ea15c 100644
--- a/RepositoryExternal.mk
+++ b/RepositoryExternal.mk
@@ -404,6 +404,8 @@ endef
 
 else # !SYSTEM_REDLAND
 
+ifneq ($(OS),ANDROID)
+
 $(eval $(call gb_Helper_register_libraries,PLAINLIBS_OOO, \
 	rdf \
 ))
@@ -421,6 +423,26 @@ endif
 
 endef
 
+else # ANDROID
+
+$(eval $(call gb_Helper_register_static_libraries,PLAINLIBS, \
+	rdf \
+	rasqal \
+	raptor \
+))
+
+define gb_LinkTarget__use_librdf
+$(call gb_LinkTarget_use_static_libraries,$(1),\
+	rdf \
+	rasqal \
+	raptor \
+	crypto \
+)
+
+endef
+
+endif # ANDROID
+
 endif # SYSTEM_REDLAND
 
 
diff --git a/redland/raptor/makefile.mk b/redland/raptor/makefile.mk
index 0229bf8..9d8dcf9 100644
--- a/redland/raptor/makefile.mk
+++ b/redland/raptor/makefile.mk
@@ -167,6 +167,9 @@ CONFIGURE_ACTION=.$/configure
 
 .IF "$(OS)"=="IOS"
 CONFIGURE_ACTION+=LIBS=-liconv
+.ENDIF
+
+.IF "$(OS)"=="IOS" || "$(OS)"=="ANDROID"
 CONFIGURE_FLAGS=--disable-shared
 .ELSE
 CONFIGURE_FLAGS=--disable-static
@@ -202,12 +205,9 @@ OUT2INC+=src$/raptor.h
 .IF "$(OS)"=="MACOSX"
 OUT2LIB+=src$/.libs$/libraptor-lo.$(RAPTOR_MAJOR).dylib src$/.libs$/libraptor.dylib
 OUT2BIN+=src/raptor-config
-.ELIF "$(OS)"=="IOS"
+.ELIF "$(OS)"=="IOS" || "$(OS)"=="ANDROID"
 OUT2LIB+=src$/.libs$/libraptor.a
 OUT2BIN+=src/raptor-config
-.ELIF "$(OS)"=="ANDROID"
-OUT2LIB+=src$/.libs$/libraptor.so
-OUT2BIN+=src/raptor-config
 .ELIF "$(OS)"=="AIX"
 OUT2LIB+=src$/.libs$/libraptor-lo.so.$(RAPTOR_MAJOR) src$/.libs$/libraptor.so
 OUT2BIN+=src/raptor-config
diff --git a/redland/rasqal/makefile.mk b/redland/rasqal/makefile.mk
index fb0dce7..1209c5a 100644
--- a/redland/rasqal/makefile.mk
+++ b/redland/rasqal/makefile.mk
@@ -86,7 +86,7 @@ rasqal_LDFLAGS+= -L$(ILIB:s/;/ -L/)
 
 CONFIGURE_DIR=
 CONFIGURE_ACTION=.$/configure PATH="..$/..$/..$/bin:$$PATH"
-CONFIGURE_FLAGS=--disable-static --disable-gtk-doc --with-openssl-digests --with-xml-parser=libxml --without-bdb --without-sqlite --without-mysql --without-postgresql --without-threestore --disable-pcre --with-decimal=none --with-www=xml --build=$(BUILD_PLATFORM) --host=$(HOST_PLATFORM) lt_cv_cc_dll_switch="-shared" CC="$(rasqal_CC)" CPPFLAGS="$(INCLUDE)" LDFLAGS="$(rasqal_LDFLAGS)" LIBS="$(rasqal_LIBS)" OBJDUMP="$(WRAPCMD) $(HOST_PLATFORM)-objdump" LIBXML2LIB="$(LIBXML2LIB)" XSLTLIB="$(XSLTLIB)"
+CONFIGURE_FLAGS=--disable-static --enable-shared --disable-gtk-doc --with-openssl-digests --with-xml-parser=libxml --without-bdb --without-sqlite --without-mysql --without-postgresql --without-threestore --disable-pcre --with-decimal=none --with-www=xml --build=$(BUILD_PLATFORM) --host=$(HOST_PLATFORM) lt_cv_cc_dll_switch="-shared" CC="$(rasqal_CC)" CPPFLAGS="$(INCLUDE)" LDFLAGS="$(rasqal_LDFLAGS)" LIBS="$(rasqal_LIBS)" OBJDUMP="$(WRAPCMD) $(HOST_PLATFORM)-objdump" LIBXML2LIB="$(LIBXML2LIB)" XSLTLIB="$(XSLTLIB)"
 BUILD_ACTION=$(GNUMAKE)
 BUILD_FLAGS+= -j$(EXTMAXPROCESS)
 BUILD_DIR=$(CONFIGURE_DIR)
@@ -139,7 +139,7 @@ XSLTLIB!:=$(XSLTLIB) # expand dmake variables for xslt-config
 
 CONFIGURE_DIR=
 CONFIGURE_ACTION=.$/configure PATH="..$/..$/..$/bin:$$PATH"
-.IF "$(OS)"=="IOS"
+.IF "$(OS)"=="IOS" || "$(OS)"=="ANDROID"
 CONFIGURE_FLAGS=--disable-shared
 .ELSE
 CONFIGURE_FLAGS=--disable-static
@@ -163,12 +163,9 @@ OUT2INC+=src$/rasqal.h
 .IF "$(OS)"=="MACOSX"
 OUT2LIB+=src$/.libs$/librasqal-lo.$(RASQAL_MAJOR).dylib src$/.libs$/librasqal.dylib
 OUT2BIN+=src/rasqal-config
-.ELIF "$(OS)"=="IOS"
+.ELIF "$(OS)"=="IOS" || "$(OS)"=="ANDROID"
 OUT2LIB+=src$/.libs$/librasqal.a
 OUT2BIN+=src/rasqal-config
-.ELIF "$(OS)"=="ANDROID"
-OUT2LIB+=src$/.libs$/librasqal.so
-OUT2BIN+=src/rasqal-config
 .ELIF "$(OS)"=="WNT"
 .IF "$(COM)"=="GCC"
 OUT2LIB+=src$/.libs$/*.a
diff --git a/redland/redland/makefile.mk b/redland/redland/makefile.mk
index 5bec90f..a62fefb 100644
--- a/redland/redland/makefile.mk
+++ b/redland/redland/makefile.mk
@@ -144,7 +144,7 @@ XSLTLIB!:=$(XSLTLIB) # expand dmake variables for xslt-config
 CONFIGURE_DIR=
 CONFIGURE_ACTION=.$/configure PATH="..$/..$/..$/bin:$$PATH"
 CONFIGURE_FLAGS=--disable-gtk-doc --with-openssl-digests --with-xml-parser=libxml --with-raptor=system --with-rasqual=system --without-bdb --without-sqlite --without-mysql --without-postgresql --without-threestore       --with-regex-library=posix --with-decimal=none --with-www=xml
-.IF "$(OS)"=="IOS"
+.IF "$(OS)"=="IOS" || "$(OS)"=="ANDROID"
 CONFIGURE_FLAGS+= --disable-shared
 .ELSE
 CONFIGURE_FLAGS+= --disable-static
@@ -169,10 +169,8 @@ OUT2INC+=librdf$/*.h
 
 .IF "$(OS)"=="MACOSX"
 OUT2LIB+=librdf$/.libs$/librdf-lo.$(REDLAND_MAJOR).dylib
-.ELIF "$(OS)"=="IOS"
+.ELIF "$(OS)"=="IOS" || "$(OS)"=="ANDROID"
 OUT2LIB+=librdf$/.libs$/librdf.a
-.ELIF "$(OS)"=="ANDROID"
-OUT2LIB+=librdf$/.libs$/librdf.so
 .ELIF "$(OS)"=="WNT"
 .IF "$(COM)"=="GCC"
 OUT2LIB+=librdf$/.libs$/*.a
commit 0d1c24e5f63fb31538d708e9842cec121e3e3f98
Author: Tor Lillqvist <tlillqvist at suse.com>
Date:   Thu Apr 19 21:10:00 2012 +0300

    Build freetype and fontconfig statically for Android

diff --git a/RepositoryExternal.mk b/RepositoryExternal.mk
index 26de781..b695b11 100644
--- a/RepositoryExternal.mk
+++ b/RepositoryExternal.mk
@@ -183,6 +183,12 @@ $(call gb_LinkTarget__use_expat,$(1),expat_xmlparse)
 
 endef
 
+ifeq ($(OS),ANDROID)
+$(eval $(call gb_Helper_register_static_libraries,PLAINLIBS, \
+	fontconfig \
+	freetype \
+))
+endif
 
 ifeq ($(SYSTEM_HUNSPELL),YES)
 
@@ -478,7 +484,12 @@ $(call gb_LinkTarget_set_include,$(1),\
 	$$(INCLUDE) \
 	$(FREETYPE_CFLAGS) \
 )
+
+ifneq ($(OS),ANDROID)
 $(call gb_LinkTarget_add_libs,$(1),$(FREETYPE_LIBS))
+else
+$(call gb_LinkTarget_use_static_libraries,$(1),freetype)
+endif
 
 endef
 
@@ -487,7 +498,12 @@ $(call gb_LinkTarget_set_include,$(1),\
 	$$(INCLUDE) \
 	$(FONTCONFIG_CFLAGS) \
 )
+
+ifneq ($(OS),ANDROID)
 $(call gb_LinkTarget_add_libs,$(1),$(FONTCONFIG_LIBS))
+else
+$(call gb_LinkTarget_use_static_libraries,$(1),fontconfig)
+endif
 
 endef
 
diff --git a/fontconfig/makefile.mk b/fontconfig/makefile.mk
index a866c4c..55375c6 100644
--- a/fontconfig/makefile.mk
+++ b/fontconfig/makefile.mk
@@ -47,8 +47,10 @@ CONFIGURE_ACTION=./configure
 CONFIGURE_ACTION!:=CFLAGS=-g $(CONFIGURE_ACTION)
 .ENDIF
 
+# This "bundled" fontconfig is built only when cross-compiling for Android
+
 CONFIGURE_FLAGS=\
-    --disable-static \
+    --disable-shared \
     --with-arch=arm \
     --with-expat-includes=$(SOLARVER)/$(INPATH)/inc/external \
     --with-expat-lib=$(SOLARVER)/$(INPATH)/lib \
diff --git a/fontconfig/prj/d.lst b/fontconfig/prj/d.lst
index 1e2a4e1..aeb7edf 100644
--- a/fontconfig/prj/d.lst
+++ b/fontconfig/prj/d.lst
@@ -1,4 +1,4 @@
-..\%__SRC%\misc\build\fontconfig*\src\.libs\*.so %_DEST%\lib
+..\%__SRC%\misc\build\fontconfig*\src\.libs\*.a %_DEST%\lib
 
 mkdir: %_DEST%\inc\external\fontconfig
 ..\%__SRC%\misc\build\fontconfig*\fontconfig\*.h %_DEST%\inc\external\fontconfig
diff --git a/freetype/makefile.mk b/freetype/makefile.mk
index 0f9be87..52f7366 100644
--- a/freetype/makefile.mk
+++ b/freetype/makefile.mk
@@ -44,7 +44,7 @@ PATCH_FILES=$(TARFILE_NAME).patch
 CONFIGURE_ACTION=./configure
 
 CONFIGURE_FLAGS=\
-    --disable-static \
+    --disable-shared \
     --without-zlib \
     --without-bzip2 \
     --prefix=$(SOLARVER)/$(INPATH) --includedir=$(SOLARVER)/$(INPATH)/inc/external \
diff --git a/freetype/prj/d.lst b/freetype/prj/d.lst
index 428e6a0..ac34ac4 100644
--- a/freetype/prj/d.lst
+++ b/freetype/prj/d.lst
@@ -1,4 +1,4 @@
-..\%__SRC%\misc\build\freetype*\objs\.libs\*.so %_DEST%\lib
+..\%__SRC%\misc\build\freetype*\objs\.libs\*.a %_DEST%\lib
 
 ..\%__SRC%\misc\build\freetype*\builds\unix\freetype-config %_DEST%\bin
 
diff --git a/vcl/Library_vcl.mk b/vcl/Library_vcl.mk
index d85bd99..0898286 100644
--- a/vcl/Library_vcl.mk
+++ b/vcl/Library_vcl.mk
@@ -501,6 +501,7 @@ $(eval $(call gb_Library_use_libraries,vcl,\
 $(eval $(call gb_Library_use_externals,vcl,\
 	fontconfig \
 	freetype \
+	expat_utf8 \
 ))
 endif
 
commit d83e45ae9c97c0722bf63228a62361a8d1d75595
Author: Tor Lillqvist <tlillqvist at suse.com>
Date:   Thu Apr 19 14:46:56 2012 +0300

    Use --as-needed --no-add-needed for Android

diff --git a/solenv/gbuild/platform/ANDROID_ARM_GCC.mk b/solenv/gbuild/platform/ANDROID_ARM_GCC.mk
index e10907a..a52a28c 100644
--- a/solenv/gbuild/platform/ANDROID_ARM_GCC.mk
+++ b/solenv/gbuild/platform/ANDROID_ARM_GCC.mk
@@ -51,6 +51,8 @@ gb_CppunitTest_CPPTESTPRECOMMAND := :
 
 gb_LinkTarget_LDFLAGS += \
     -Wl,-z,defs \
+	-Wl,--as-needed \
+	-Wl,--no-add-needed
 
 define gb_LinkTarget__command_dynamiclink
 $(call gb_Helper_abbreviate_dirs,\
diff --git a/solenv/inc/unxandr.mk b/solenv/inc/unxandr.mk
index 812c932..f9408b9 100644
--- a/solenv/inc/unxandr.mk
+++ b/solenv/inc/unxandr.mk
@@ -47,8 +47,11 @@ CDEFS !:= $(subst,-D_REENTRANT, $(CDEFS))
 # Thus for Android we never build executable programs, just shared
 # libraries that the NativeActivity Java code will load.
 
-LINKFLAGSAPPGUI=-shared
-LINKFLAGSAPPCUI=-shared
+LINKFLAGSAPPGUI=-shared -Wl,--as-needed -Wl,--no-add-needed
+LINKFLAGSAPPCUI=-shared -Wl,--as-needed -Wl,--no-add-needed
+
+LINKFLAGSSHLGUI+= -Wl,--as-needed -Wl,--no-add-needed
+LINKFLAGSSHLCUI+= -Wl,--as-needed -Wl,--no-add-needed
 
 STDLIBGUIMT+=-llog -landroid -lgnustl_shared
 STDLIBCUIMT+=-llog -landroid -lgnustl_shared
commit 409f117e1c849883f8490e82f4a2323a9dc8ad75
Author: Tor Lillqvist <tlillqvist at suse.com>
Date:   Wed Apr 18 16:53:54 2012 +0300

    Enable loading of several documents, and do that then

diff --git a/android/experimental/DocumentLoader/Makefile b/android/experimental/DocumentLoader/Makefile
index 5dea15a..2a67109 100644
--- a/android/experimental/DocumentLoader/Makefile
+++ b/android/experimental/DocumentLoader/Makefile
@@ -155,7 +155,11 @@ copy-stuff:
 	for F in xml/services xml/ure/services; do \
 		sed -e 's!uri="vnd.sun.star.expand:$$LO_LIB_DIR/!uri="file://$(APP_DATA_PATH)/lib/!g' <$(OUTDIR)/$$F.rdb >assets/$$F.rdb; \
 	done
-	cp $(SRC_ROOT)/odk/examples/java/DocumentHandling/test/test1.odt assets
+	cp $(SRC_ROOT)/odk/examples/java/DocumentHandling/test/test1.odt \
+	   $(SRC_ROOT)/sc/qa/unit/data/xls/border.xls \
+	   $(SRC_ROOT)/sw/qa/core/data/odt/test.odt \
+	   $(SRC_ROOT)/sw/qa/core/data/doc/testVba.doc \
+		assets
 	cp $(WORKDIR)/ComponentTarget/i18npool/util/i18npool.component assets/ComponentTarget/i18npool/util
 #
 	mkdir -p assets/ure/share/misc assets/share/registry/res assets/share/config/soffice.cfg
@@ -259,7 +263,7 @@ uninstall:
 	$(ANDROID_SDK_HOME)/platform-tools/adb uninstall $(APP_PACKAGE)
 
 run:
-	adb shell am start -n org.libreoffice.android.examples/.DocumentLoader -e input /assets/test1.odt
+	adb shell am start -n org.libreoffice.android.examples/.DocumentLoader -e input /assets/test1.odt:/assets/border.xls:/assets/test.odt:/assets/testVba.doc
 
 clean:
 	$(ANT) clean
diff --git a/android/experimental/DocumentLoader/src/org/libreoffice/android/examples/DocumentLoader.java b/android/experimental/DocumentLoader/src/org/libreoffice/android/examples/DocumentLoader.java
index 76b545f..409a95c 100644
--- a/android/experimental/DocumentLoader/src/org/libreoffice/android/examples/DocumentLoader.java
+++ b/android/experimental/DocumentLoader/src/org/libreoffice/android/examples/DocumentLoader.java
@@ -77,7 +77,7 @@ public class DocumentLoader
             if (input == null)
                 input = "/assets/test1.odt";
 
-            // We need to fake up abn argv, and the argv[0] even needs to
+            // We need to fake up an argv, and the argv[0] even needs to
             // point to some file name that we can pretend is the "program".
             // setCommandArgs() will prefix argv[0] with the app's data
             // directory.
@@ -102,22 +102,27 @@ public class DocumentLoader
 
             Log.i(TAG, "xCompLoader is" + (xCompLoader!=null ? " not" : "") + " null");
 
-            // Loading the wanted document
-            com.sun.star.beans.PropertyValue propertyValues[] =
-                new com.sun.star.beans.PropertyValue[2];
-            propertyValues[0] = new com.sun.star.beans.PropertyValue();
-            propertyValues[0].Name = "Hidden";
-            propertyValues[0].Value = new Boolean(true);
-            propertyValues[1] = new com.sun.star.beans.PropertyValue();
-            propertyValues[1].Name = "ReadOnly";
-            propertyValues[1].Value = new Boolean(true);
-
-            String sUrl = "file://" + input;
-
-            Object oDoc =
-                xCompLoader.loadComponentFromURL
-                (sUrl, "_blank", 0, propertyValues);
-            Log.i(TAG, "oDoc is " + (oDoc!=null ? oDoc.toString() : "null"));
+            // Load the wanted document(s)
+            String[] inputs = input.split(":");
+            for (int i = 0; i < inputs.length; i++) {
+                com.sun.star.beans.PropertyValue propertyValues[] =
+                    new com.sun.star.beans.PropertyValue[2];
+                propertyValues[0] = new com.sun.star.beans.PropertyValue();
+                propertyValues[0].Name = "Hidden";
+                propertyValues[0].Value = new Boolean(true);
+                propertyValues[1] = new com.sun.star.beans.PropertyValue();
+                propertyValues[1].Name = "ReadOnly";
+                propertyValues[1].Value = new Boolean(true);
+
+                String sUrl = "file://" + inputs[i];
+
+                Log.i(TAG, "Attempting to load " + sUrl);
+
+                Object oDoc =
+                    xCompLoader.loadComponentFromURL
+                    (sUrl, "_blank", 0, propertyValues);
+                Log.i(TAG, "oDoc is " + (oDoc!=null ? oDoc.toString() : "null"));
+            }
         }
         catch (Exception e) {
             e.printStackTrace(System.err);


More information about the Libreoffice-commits mailing list