summaryrefslogtreecommitdiff
path: root/idlc
diff options
context:
space:
mode:
authorMike Kaganski <mike.kaganski@collabora.com>2019-09-04 10:20:38 +0300
committerStephan Bergmann <sbergman@redhat.com>2019-09-11 23:46:20 +0200
commite08cba00beaf29b9953cb4c3f89faca2bc7b42c1 (patch)
tree81dc8432de4ebcff952cba7f81c86bd2c73e7e9b /idlc
parent8f35bb1fcc9c1efd7edc52efbfc33509de2c00f2 (diff)
Fix missing dependency
Without this, e.g. 'make clean; make CustomTarget_idlc/parser_test' may fail on localized Windows, because the library is not built yet. $ locale LANG=en_US.UTF-8 LC_CTYPE="en_US.UTF-8" LC_NUMERIC="en_US.UTF-8" LC_TIME="en_US.UTF-8" LC_COLLATE="en_US.UTF-8" LC_MONETARY="en_US.UTF-8" LC_MESSAGES="en_US.UTF-8" LC_ALL=en_US.UTF-8 (but what is relevant, is that on Windows, osl_getThreadTextEncoding returns active codepage, independent on cygwin locale settings; in my case, it's Win1251) Backtrace: ucrtbased.dll!issue_debug_notification(const wchar_t * const message) Line 28 at minkernel\crts\ucrt\src\appcrt\internal\report_runtime_error.cpp(28) ucrtbased.dll!__acrt_report_runtime_error(const wchar_t * message) Line 154 at minkernel\crts\ucrt\src\appcrt\internal\report_runtime_error.cpp(154) ucrtbased.dll!abort() Line 61 at minkernel\crts\ucrt\src\appcrt\startup\abort.cpp(61) sal3.dll!`anonymous namespace'::FullTextEncodingData::FullTextEncodingData() Line 389 at c:\lo\src\core\sal\textenc\textenc.cxx(389) sal3.dll!rtl::Static<`anonymous namespace'::FullTextEncodingData,A0xa37698ef::FullTextEncodingDataSingleton>::get() Line 395 at c:\lo\src\core\include\rtl\instance.hxx(395) sal3.dll!Impl_getTextEncodingData(unsigned short nEncoding) Line 434 at c:\lo\src\core\sal\textenc\textenc.cxx(434) sal3.dll!rtl_createTextToUnicodeConverter(unsigned short eTextEncoding) Line 110 at c:\lo\src\core2\sal\textenc\textcvt.cxx(110) sal3.dll!rtl_string2UString_status(_rtl_uString * * ppThis, const char * pStr, long nLen, unsigned short eTextEncoding, unsigned long nCvtFlags, unsigned long * pInfo) Line 807 at c:\lo\src\core\sal\rtl\ustring.cxx(807) sal3.dll!rtl_string2UString(_rtl_uString * * ppThis, const char * pStr, long nLen, unsigned short eTextEncoding, unsigned long nCvtFlags) Line 887 at c:\lo\src\core\sal\rtl\ustring.cxx(887) idlc.exe!rtl::OUString::OUString(const char * value, long length, unsigned short encoding, unsigned long convertFlags) Line 363 at c:\lo\src\core\include\rtl\ustring.hxx(363) idlc.exe!convertToAbsoluteSystemPath(const rtl::OString & fileName) Line 62 at c:\lo\src\core\idlc\source\idlccompile.cxx(62) idlc.exe!sal_main_with_args(int argc, char * * argv) Line 86 at c:\lo\src\core\idlc\source\idlcmain.cxx(86) idlc.exe!main(int argc, char * * argv) Line 26 at c:\lo\src\core\idlc\source\idlcmain.cxx(26) idlc.exe!invoke_main() Line 79 at d:\agent\_work\2\s\src\vctools\crt\vcstartup\src\startup\exe_common.inl(79) idlc.exe!__scrt_common_main_seh() Line 288 at d:\agent\_work\2\s\src\vctools\crt\vcstartup\src\startup\exe_common.inl(288) idlc.exe!__scrt_common_main() Line 331 at d:\agent\_work\2\s\src\vctools\crt\vcstartup\src\startup\exe_common.inl(331) idlc.exe!mainCRTStartup() Line 17 at d:\agent\_work\2\s\src\vctools\crt\vcstartup\src\startup\exe_main.cpp(17) kernel32.dll!BaseThreadInitThunk() ntdll.dll!RtlUserThreadStart() Change-Id: Ida88eca9d477c61870a8fb94aab043f894b16d10 Reviewed-on: https://gerrit.libreoffice.org/78580 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
Diffstat (limited to 'idlc')
-rw-r--r--idlc/Executable_idlc.mk7
1 files changed, 7 insertions, 0 deletions
diff --git a/idlc/Executable_idlc.mk b/idlc/Executable_idlc.mk
index d5d1af3f9d13..e194e9049c77 100644
--- a/idlc/Executable_idlc.mk
+++ b/idlc/Executable_idlc.mk
@@ -63,4 +63,11 @@ $(eval $(call gb_Executable_add_exception_objects,idlc,\
idlc/source/astservice \
))
+# Without this, e.g. 'make clean; make CustomTarget_idlc/parser_test' may fail on Windows localized
+# to something other than listed in Impl_getTextEncodingData, because osl_getThreadTextEncoding()
+# returns Windows ACP, calling FullTextEncodingData ctor which loads the not-yet-built library
+$(call gb_Executable_add_runtime_dependencies,idlc, \
+ $(call gb_Library_get_target,sal_textenc) \
+)
+
# vim:set noet sw=4 ts=4: