tdf#118308: Incorrect Paste Special dialog when ...
[LibreOffice.git] / sal / Library_sal.mk
blob0227d6ffe32cdaa8f8fc41e8bef2a1e2a7c8cc8f
1 # -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
4 # This file is part of the LibreOffice project.
6 # This Source Code Form is subject to the terms of the Mozilla Public
7 # License, v. 2.0. If a copy of the MPL was not distributed with this
8 # file, You can obtain one at http://mozilla.org/MPL/2.0/.
11 $(eval $(call gb_Library_Library,sal))
13 $(eval $(call gb_Library_set_soversion_script,sal,$(SRCDIR)/sal/util/sal.map))
15 $(eval $(call gb_Library_set_precompiled_header,sal,$(SRCDIR)/sal/inc/pch/precompiled_sal))
17 $(eval $(call gb_Library_set_include,sal,\
18 $$(INCLUDE) \
19 -I$(SRCDIR)/sal/inc \
22 $(eval $(call gb_Library_add_defs,sal,\
23 $(if $(filter FUZZERS,$(BUILD_TYPE)), \
24 -DFORCE_DEFAULT_SIGNAL \
25 ) \
26 $(if $(filter SYS_ALLOC,$(ALLOC))$(filter-out XTRUE,X$(ENABLE_RUNTIME_OPTIMIZATIONS)), \
27 -DFORCE_SYSALLOC \
28 ) \
29 $(if $(filter IOS,$(OS)), \
30 -DNO_CHILD_PROCESSES \
31 ) \
32 -DSAL_DLLIMPLEMENTATION \
33 -DRTL_OS="\"$(RTL_OS)\"" \
34 -DRTL_ARCH="\"$(RTL_ARCH)\"" \
35 -DSRCDIR="\"$(SRCDIR)\"" \
38 $(eval $(call gb_Library_use_libraries,sal,\
39 $(if $(filter ANDROID,$(OS)), \
40 lo-bootstrap \
41 ) \
44 $(eval $(call gb_Library_use_externals,sal,\
45 valgrind \
48 $(eval $(call gb_Library_use_system_win32_libs,sal,\
49 advapi32 \
50 comdlg32 \
51 dbghelp \
52 mpr \
53 ole32 \
54 shell32 \
55 user32 \
56 ws2_32 \
59 $(eval $(call gb_Library_add_libs,sal,\
60 $(if $(filter-out ANDROID HAIKU WNT,$(OS)), \
61 -lpthread \
62 ) \
63 $(if $(filter LINUX,$(OS)), \
64 -ldl \
65 -lrt \
66 ) \
67 $(if $(filter SOLARIS,$(OS)), \
68 -lnsl \
69 -lsocket \
70 ) \
71 $(if $(filter HAIKU,$(OS)), \
72 -lnetwork \
73 ) \
76 ifeq ($(OS),MACOSX)
77 $(eval $(call gb_Library_use_system_darwin_frameworks,sal,\
78 Carbon \
79 CoreFoundation \
80 Foundation \
81 $(if $(ENABLE_MACOSX_SANDBOX),Security) \
83 endif
85 $(eval $(call gb_Library_add_exception_objects,sal,\
86 sal/osl/all/compat \
87 sal/osl/all/debugbase \
88 sal/osl/all/filepath \
89 sal/osl/all/loadmodulerelative \
90 sal/osl/all/log \
91 sal/osl/all/signalshared \
92 sal/osl/all/utility \
93 sal/rtl/alloc_arena \
94 sal/rtl/alloc_cache \
95 sal/rtl/alloc_fini \
96 sal/rtl/alloc_global \
97 sal/rtl/bootstrap \
98 sal/rtl/byteseq \
99 sal/rtl/cipher \
100 sal/rtl/cmdargs \
101 sal/rtl/crc \
102 sal/rtl/digest \
103 sal/rtl/hash \
104 sal/rtl/locale \
105 sal/rtl/math \
106 sal/rtl/random \
107 sal/rtl/rtl_process \
108 sal/rtl/strbuf \
109 sal/rtl/strimp \
110 sal/rtl/string \
111 sal/rtl/unload \
112 sal/rtl/uri \
113 sal/rtl/ustrbuf \
114 sal/rtl/ustring \
115 sal/rtl/uuid \
116 sal/textenc/converter \
117 sal/textenc/convertsimple \
118 sal/textenc/handleundefinedunicodetotextchar \
119 sal/textenc/tcvtutf8 \
120 sal/textenc/tencinfo \
121 sal/textenc/textcvt \
122 sal/textenc/textenc \
123 sal/textenc/unichars \
126 ifeq ($(OS),IOS)
127 $(eval $(call gb_Library_add_cxxflags,sal,\
128 $(gb_OBJCXXFLAGS) \
130 endif
132 sal_textenc_code= \
133 sal/textenc/context \
134 sal/textenc/convertbig5hkscs \
135 sal/textenc/converteuctw \
136 sal/textenc/convertgb18030 \
137 sal/textenc/convertisciidevangari \
138 sal/textenc/convertiso2022cn \
139 sal/textenc/convertiso2022jp \
140 sal/textenc/convertiso2022kr \
141 sal/textenc/convertsinglebytetobmpunicode \
142 sal/textenc/tables \
143 sal/textenc/tcvtbyte \
144 sal/textenc/tcvtmb \
145 sal/textenc/tcvtutf7 \
147 ifeq ($(OS),ANDROID)
148 $(eval $(call gb_Library_add_exception_objects,sal,\
149 $(sal_textenc_code) \
151 else ifeq ($(DISABLE_DYNLOADING),TRUE)
153 $(eval $(call gb_Library_add_exception_objects,sal,\
154 $(sal_textenc_code) \
156 endif
158 ifneq ($(OS),WNT)
159 $(eval $(call gb_Library_add_exception_objects,sal,\
160 sal/osl/unx/backtraceapi \
161 sal/osl/unx/conditn \
162 sal/osl/unx/file \
163 sal/osl/unx/file_error_transl \
164 sal/osl/unx/file_misc \
165 sal/osl/unx/file_path_helper \
166 sal/osl/unx/file_stat \
167 sal/osl/unx/file_url \
168 sal/osl/unx/file_volume \
169 sal/osl/unx/memory \
170 sal/osl/unx/module \
171 sal/osl/unx/mutex \
172 sal/osl/unx/nlsupport \
173 sal/osl/unx/pipe \
174 sal/osl/unx/process \
175 sal/osl/unx/process_impl \
176 sal/osl/unx/profile \
177 sal/osl/unx/random \
178 sal/osl/unx/readwrite_helper \
179 sal/osl/unx/security \
180 sal/osl/unx/signal \
181 sal/osl/unx/socket \
182 sal/osl/unx/tempfile \
183 sal/osl/unx/thread \
184 sal/osl/unx/time \
185 $(if $(filter-out ANDROID IOS,$(OS)), sal/osl/unx/salinit) \
188 # Note that the uunxapi.mm file just includes the uunxapi.cxx one. Ditto for system.mm
189 ifeq ($(OS),MACOSX)
190 $(eval $(call gb_Library_add_objcxxobjects,sal,\
191 sal/osl/unx/uunxapi \
192 sal/osl/unx/system \
194 else
195 $(eval $(call gb_Library_add_exception_objects,sal,\
196 sal/osl/unx/uunxapi \
197 sal/osl/unx/system \
199 endif
201 ifneq ($(filter MACOSX IOS,$(OS)),)
202 $(eval $(call gb_Library_add_exception_objects,sal,\
203 sal/osl/unx/osxlocale \
205 endif
206 ifneq ($(OS),WNT)
207 $(eval $(call gb_Library_add_cobjects,sal,\
208 sal/osl/unx/backtrace \
210 endif
211 ifneq ($(filter SPARC64 SPARC,$(CPUNAME)),)
212 $(eval $(call gb_Library_add_asmobjects,sal,\
213 sal/osl/unx/asm/interlck_sparc \
215 else
216 $(eval $(call gb_Library_add_exception_objects,sal,\
217 sal/osl/unx/interlck \
219 endif
221 else # $(OS) == WNT
223 # FIXME ?
224 # .IF "$(CCNUMVER)" >= "001400000000"
225 # $(eval $(call gb_Library_add_defs,sal,\
226 -D_CRT_NON_CONFORMING_SWPRINTFS \
228 # .ENDIF
230 $(eval $(call gb_Library_add_exception_objects,sal,\
231 sal/osl/w32/backtrace \
232 sal/osl/w32/conditn \
233 sal/osl/w32/dllentry \
234 sal/osl/w32/file \
235 sal/osl/w32/file_dirvol \
236 sal/osl/w32/file_error \
237 sal/osl/w32/file_url \
238 sal/osl/w32/interlck \
239 sal/osl/w32/memory \
240 sal/osl/w32/module \
241 sal/osl/w32/mutex \
242 sal/osl/w32/nlsupport \
243 sal/osl/w32/path_helper \
244 sal/osl/w32/pipe \
245 sal/osl/w32/process \
246 sal/osl/w32/procimpl \
247 sal/osl/w32/profile \
248 sal/osl/w32/random \
249 sal/osl/w32/salinit \
250 sal/osl/w32/security \
251 sal/osl/w32/signal \
252 sal/osl/w32/socket \
253 sal/osl/w32/tempfile \
254 sal/osl/w32/thread \
255 sal/osl/w32/time \
258 endif # ifneq ($(OS),WNT)
260 # vim: set noet sw=4 ts=4: