[Libreoffice-commits] core.git: Branch 'libreoffice-4-3' - external/icu RepositoryExternal.mk

Michael Stahl mstahl at redhat.com
Thu Jul 24 05:31:11 PDT 2014


 RepositoryExternal.mk                   |    4 +++
 external/icu/ExternalPackage_icu.mk     |    4 ---
 external/icu/ExternalPackage_icu_ure.mk |   33 ++++++++++++++++++++++++++++++++
 external/icu/Module_icu.mk              |    1 
 4 files changed, 38 insertions(+), 4 deletions(-)

New commits:
commit 3012156bab9dc0504a61fa7062f8e7cbd677bad4
Author: Michael Stahl <mstahl at redhat.com>
Date:   Thu Jul 24 00:22:51 2014 +0200

    icu: un-break installation of Java extensions on Windows (rel. fdo#63756)
    
    Linking libxml2 against ICU libraries has a nasty side effect:
    The URE library javavm.dll links against URE libxml2.dll, which
    is now linked against OOO icuuc53.dll; when a URE program, like
    uno.exe, tries to load javavm.dll it fails because the OOO layer
    "program" dir is not on PATH; this breaks the installation of Java
    extensions.
    
    Fix that by splitting up ICU libraries and putting the required ones
    into URE layer.
    
    (regression from 7515b1a90fac9e31733c0fdcc1156adadf0e6f99)
    
    Change-Id: If98dd0357162cb632d9762cd2d20162de5eb1a52
    (cherry picked from commit 057613c6864204ac5c09260e93a8f14cc9768b90)
    Reviewed-on: https://gerrit.libreoffice.org/10500
    Reviewed-by: Caolán McNamara <caolanm at redhat.com>
    Tested-by: Caolán McNamara <caolanm at redhat.com>

diff --git a/RepositoryExternal.mk b/RepositoryExternal.mk
index c149869..ff50598 100644
--- a/RepositoryExternal.mk
+++ b/RepositoryExternal.mk
@@ -1393,6 +1393,10 @@ endef
 
 else # !SYSTEM_ICU
 
+$(eval $(call gb_Helper_register_packages_for_install,ure, \
+	icu_ure \
+))
+
 $(eval $(call gb_Helper_register_packages_for_install,ooo, \
 	icu \
 ))
diff --git a/external/icu/ExternalPackage_icu.mk b/external/icu/ExternalPackage_icu.mk
index be3a1d8..4c90d8f 100644
--- a/external/icu/ExternalPackage_icu.mk
+++ b/external/icu/ExternalPackage_icu.mk
@@ -18,14 +18,10 @@ ifeq ($(OS),WNT)
 
 ifeq ($(COM),GCC)
 $(eval $(call gb_ExternalPackage_add_files,icu,$(LIBO_LIB_FOLDER),\
-	source/lib/icudt$(ICU_MAJOR).dll \
-	source/lib/icuuc$(ICU_MAJOR).dll \
 	source/lib/icuin$(ICU_MAJOR).dll \
 ))
 else
 $(eval $(call gb_ExternalPackage_add_files,icu,$(LIBO_LIB_FOLDER),\
-	source/lib/icudt$(if $(MSVC_USE_DEBUG_RUNTIME),d)$(ICU_MAJOR).dll \
-	source/lib/icuuc$(if $(MSVC_USE_DEBUG_RUNTIME),d)$(ICU_MAJOR).dll \
 	source/lib/icuin$(if $(MSVC_USE_DEBUG_RUNTIME),d)$(ICU_MAJOR).dll \
 ))
 endif # $(COM)
diff --git a/external/icu/ExternalPackage_icu_ure.mk b/external/icu/ExternalPackage_icu_ure.mk
new file mode 100644
index 0000000..a016c8c
--- /dev/null
+++ b/external/icu/ExternalPackage_icu_ure.mk
@@ -0,0 +1,33 @@
+# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
+#
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+
+# libxml2 is in URE and depends on icuuc*.dll on Windows - extra package needed
+$(eval $(call gb_ExternalPackage_ExternalPackage,icu_ure,icu))
+
+$(eval $(call gb_ExternalPackage_use_external_project,icu_ure,icu))
+
+ifneq ($(DISABLE_DYNLOADING),TRUE)
+ifeq ($(OS),WNT)
+
+ifeq ($(COM),GCC)
+$(eval $(call gb_ExternalPackage_add_files,icu_ure,$(LIBO_URE_LIB_FOLDER),\
+	source/lib/icudt$(ICU_MAJOR).dll \
+	source/lib/icuuc$(ICU_MAJOR).dll \
+))
+else
+$(eval $(call gb_ExternalPackage_add_files,icu_ure,$(LIBO_URE_LIB_FOLDER),\
+	source/lib/icudt$(if $(MSVC_USE_DEBUG_RUNTIME),d)$(ICU_MAJOR).dll \
+	source/lib/icuuc$(if $(MSVC_USE_DEBUG_RUNTIME),d)$(ICU_MAJOR).dll \
+))
+endif # $(COM)
+
+endif # $(OS)
+endif # DISABLE_DYNLOADING
+
+# vim: set noet sw=4 ts=4:
diff --git a/external/icu/Module_icu.mk b/external/icu/Module_icu.mk
index 258c26e..5c99b93 100644
--- a/external/icu/Module_icu.mk
+++ b/external/icu/Module_icu.mk
@@ -12,6 +12,7 @@ $(eval $(call gb_Module_Module,icu))
 $(eval $(call gb_Module_add_targets,icu,\
 	UnpackedTarball_icu \
 	ExternalPackage_icu \
+	ExternalPackage_icu_ure \
 	ExternalProject_icu \
 ))
 


More information about the Libreoffice-commits mailing list