summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCaolán McNamara <caolanm@redhat.com>2016-08-18 10:15:52 +0100
committerCaolán McNamara <caolanm@redhat.com>2016-08-18 10:47:45 +0000
commit052e3ebbf7aab404dd6db9960f2e9374aefa9a1b (patch)
tree403e4eecba326162db3bf13ac6335647cc05fec0
parent6bfa24aacb56aaf0d16c278ec1f3561d5e3b4606 (diff)
skip checking for icuuc lib
cause its called icuucd under debug windows and change the runtime load to try icuucd if MSVC_USE_DEBUG_RUNTIME was in use at compile time Change-Id: I10fbe4890a24364a45ae5993ad7e8079ac3fd182 Reviewed-on: https://gerrit.libreoffice.org/28210 Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
-rw-r--r--external/firebird/ExternalProject_firebird.mk1
-rw-r--r--external/firebird/UnpackedTarball_firebird.mk1
-rw-r--r--external/firebird/wnt-dbgutil.patch63
3 files changed, 65 insertions, 0 deletions
diff --git a/external/firebird/ExternalProject_firebird.mk b/external/firebird/ExternalProject_firebird.mk
index c6fc7d41250d..b30fe9235330 100644
--- a/external/firebird/ExternalProject_firebird.mk
+++ b/external/firebird/ExternalProject_firebird.mk
@@ -55,6 +55,7 @@ $(call gb_ExternalProject_get_state_target,firebird,build):
) \
" \
&& export CXXFLAGS=" \
+ $(if $(filter MSC,$(COM)),$(if $(MSVC_USE_DEBUG_RUNTIME),-DMSVC_USE_DEBUG_RUNTIME)) \
$(if $(shell test '$(GCC_VERSION)' -ge 600 && echo yes),-fno-sized-deallocation -fno-delete-null-pointer-checks,) \
$(if $(SYSTEM_BOOST),$(BOOST_CPPFLAGS), \
$(BOOST_CPPFLAGS) \
diff --git a/external/firebird/UnpackedTarball_firebird.mk b/external/firebird/UnpackedTarball_firebird.mk
index f015a911ccd3..ba625974e29d 100644
--- a/external/firebird/UnpackedTarball_firebird.mk
+++ b/external/firebird/UnpackedTarball_firebird.mk
@@ -19,6 +19,7 @@ $(eval $(call gb_UnpackedTarball_add_patches,firebird,\
external/firebird/firebird-rpath.patch.0 \
external/firebird/firebird-cloop-compiler.patch.1 \
external/firebird/firebird-gcc6.patch.1 \
+ external/firebird/wnt-dbgutil.patch \
))
ifeq ($(OS)-$(COM),WNT-MSC)
diff --git a/external/firebird/wnt-dbgutil.patch b/external/firebird/wnt-dbgutil.patch
new file mode 100644
index 000000000000..db859b64fbc7
--- /dev/null
+++ b/external/firebird/wnt-dbgutil.patch
@@ -0,0 +1,63 @@
+--- configure
++++ configure
+@@ -18402,44 +18402,6 @@
+ fi
+
+
+-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for main in -licuuc" >&5
+-$as_echo_n "checking for main in -licuuc... " >&6; }
+-if ${ac_cv_lib_icuuc_main+:} false; then :
+- $as_echo_n "(cached) " >&6
+-else
+- ac_check_lib_save_LIBS=$LIBS
+-LIBS="-licuuc $LIBS"
+-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+-/* end confdefs.h. */
+-
+-
+-int
+-main ()
+-{
+-return main ();
+- ;
+- return 0;
+-}
+-_ACEOF
+-if ac_fn_c_try_link "$LINENO"; then :
+- ac_cv_lib_icuuc_main=yes
+-else
+- ac_cv_lib_icuuc_main=no
+-fi
+-rm -f core conftest.err conftest.$ac_objext \
+- conftest$ac_exeext conftest.$ac_ext
+-LIBS=$ac_check_lib_save_LIBS
+-fi
+-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_icuuc_main" >&5
+-$as_echo "$ac_cv_lib_icuuc_main" >&6; }
+-if test "x$ac_cv_lib_icuuc_main" = xyes; then :
+- ICU_OK=yes
+-else
+- as_fn_error $? "ICU support not found - please install development ICU package" "$LINENO" 5
+-fi
+-
+-
+-
+ pre_save_restore_cflags=$CFLAGS
+ pre_save_restore_cxxflags=$CXXFLAGS
+ pre_save_restore_libs=$LIBS
+--- src/common/unicode_util.cpp
++++ src/common/unicode_util.cpp
+@@ -58,8 +58,13 @@
+
+ namespace {
+ #if defined(WIN_NT)
++#if defined(MSVC_USE_DEBUG_RUNTIME)
++const char* const inTemplate = "icuind%s.dll";
++const char* const ucTemplate = "icuucd%s.dll";
++#else
+ const char* const inTemplate = "icuin%s.dll";
+ const char* const ucTemplate = "icuuc%s.dll";
++#endif
+ #elif defined(DARWIN)
+ //const char* const inTemplate = "/Library/Frameworks/Firebird.framework/Versions/A/Libraries/libicui18n.dylib";
+ //const char* const ucTemplate = "/Library/Frameworks/Firebird.framework/versions/A/Libraries/libicuuc.dylib";