Avoid potential negative array index access to cached text.
[LibreOffice.git] / external / icu / icu4c-emscripten-cross.patch.1
blob84c88a68a87de494062249a1a079f6cea55d525d
1 --- icu/source/acinclude.m4.orig        2020-04-22 22:04:20.000000000 +0200
2 +++ icu/source/acinclude.m4     2020-11-04 06:10:29.993070072 +0100
3 @@ -84,6 +84,7 @@
4  *-dec-osf*) icu_cv_host_frag=mh-alpha-osf ;;
5  *-*-nto*)      icu_cv_host_frag=mh-qnx ;;
6  *-ncr-*)       icu_cv_host_frag=mh-mpras ;;
7 +wasm*-*-emscripten*)   icu_cv_host_frag=mh-emscripten ;;
8  *)             icu_cv_host_frag=mh-unknown ;;
9  esac
10                 ]
11 --- /dev/null
12 +++ icu/source/config/mh-emscripten     2015-10-06 12:01:00.497972406 +0200
13 @@ -0,0 +1,86 @@
14 +## Emscripten-specific setup
15 +## Copyright (c) 1999-2013, International Business Machines Corporation and
16 +## others. All Rights Reserved.
17 +## Commands to generate dependency files
18 +GEN_DEPS.c=  $(CC) -E -MM $(DEFS) $(CPPFLAGS)
19 +GEN_DEPS.cc= $(CXX) -E -MM $(DEFS) $(CPPFLAGS) $(CXXFLAGS)
20
21 +## Flags for position independent code
22 +SHAREDLIBCFLAGS = -fPIC
23 +SHAREDLIBCXXFLAGS = -fPIC
24 +SHAREDLIBCPPFLAGS = -DPIC
26 +## Additional flags when building libraries and with threads
27 +THREADSCPPFLAGS = -D_REENTRANT
28 +LIBCPPFLAGS =
30 +## Compiler switch to embed a runtime search path
31 +LD_RPATH= -Wl,-zorigin,-rpath,'$$'ORIGIN
32 +LD_RPATH_PRE = -Wl,-rpath,
34 +## Force RPATH=$ORIGIN to locate own dependencies w/o need for LD_LIBRARY_PATH:
35 +ENABLE_RPATH=YES
36 +RPATHLDFLAGS=${LD_RPATH_PRE}'$$ORIGIN'
38 +## These are the library specific LDFLAGS
39 +#LDFLAGSICUDT=-nodefaultlibs -nostdlib
40 +# Debian change: linking icudata as data only causes too many problems.
41 +LDFLAGSICUDT=
43 +## Compiler switch to embed a library name
44 +# The initial tab in the next line is to prevent icu-config from reading it.
45 +       LD_SONAME = -Wl,-soname -Wl,$(notdir $(MIDDLE_SO_TARGET))
46 +#SH# # We can't depend on MIDDLE_SO_TARGET being set.
47 +#SH# LD_SONAME=
49 +## Shared library options
50 +LD_SOOPTIONS= -Wl,-Bsymbolic-functions
52 +## Shared object suffix
53 +SO = so
54 +## Non-shared intermediate object suffix
55 +STATIC_O = o
57 +## Compilation rules
58 +# WASM needs -pthread for atomics support
59 +%.$(STATIC_O): $(srcdir)/%.c
60 +       $(call SILENT_COMPILE,$(strip $(COMPILE.c) $(STATICCPPFLAGS) $(STATICCFLAGS)) -pthread -o $@ $<)
62 +%.$(STATIC_O): $(srcdir)/%.cpp
63 +       $(call SILENT_COMPILE,$(strip $(COMPILE.cc) $(STATICCPPFLAGS) $(STATICCXXFLAGS)) -pthread -o $@ $<)
66 +## Dependency rules
67 +%.d: $(srcdir)/%.c
68 +       $(call ICU_MSG,(deps)) $<
69 +       @$(SHELL) -ec '$(GEN_DEPS.c) $< \
70 +               | sed '\''s%\($*\)\.o[ :]*%\1.o $@ : %g'\'' > $@; \
71 +               [ -s $@ ] || rm -f $@'
73 +%.d: $(srcdir)/%.cpp
74 +       $(call ICU_MSG,(deps)) $<
75 +       @$(SHELL) -ec '$(GEN_DEPS.cc) $< \
76 +               | sed '\''s%\($*\)\.o[ :]*%\1.o $@ : %g'\'' > $@; \
77 +               [ -s $@ ] || rm -f $@'
79 +## Versioned libraries rules
81 +%.$(SO).$(SO_TARGET_VERSION_MAJOR): %.$(SO).$(SO_TARGET_VERSION)
82 +       $(RM) $@ && ln -s ${<F} $@
83 +%.$(SO): %.$(SO).$(SO_TARGET_VERSION_MAJOR)
84 +       $(RM) $@ && ln -s ${*F}.$(SO).$(SO_TARGET_VERSION) $@
86 +##  Bind internal references
88 +# LDflags that pkgdata will use
89 +BIR_LDFLAGS= -Wl,-Bsymbolic
91 +# Dependencies [i.e. map files] for the final library
92 +BIR_DEPS=
94 +## Remove shared library 's'
95 +STATIC_PREFIX_WHEN_USED =
96 +STATIC_PREFIX =
98 +## without assembly
99 +PKGDATA_OPTS = -O $(top_builddir)/data/icupkg.inc -w