1 # -*- Mode: makefile; tab-width: 4; indent-tabs-mode: t -*-
3 # Version: MPL 1.1 / GPLv3+ / LGPLv3+
5 # The contents of this file are subject to the Mozilla Public License Version
6 # 1.1 (the "License"); you may not use this file except in compliance with
7 # the License or as specified alternatively below. You may obtain a copy of
8 # the License at http://www.mozilla.org/MPL/
10 # Software distributed under the License is distributed on an "AS IS" basis,
11 # WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
12 # for the specific language governing rights and limitations under the
15 # Major Contributor(s):
16 # Copyright (C) 2011 Matúš Kukan <matus.kukan@gmail.com> (initial developer)
18 # All Rights Reserved.
20 # For minor contributions see the git repository.
22 # Alternatively, the contents of this file may be used under the terms of
23 # either the GNU General Public License Version 3 or later (the "GPLv3+"), or
24 # the GNU Lesser General Public License Version 3 or later (the "LGPLv3+"),
25 # in which case the provisions of the GPLv3+ or the LGPLv3+ are applicable
26 # instead of those above.
28 $(eval
$(call gb_Library_Library
,sal
))
30 $(eval
$(call gb_Library_set_soversion_script
,sal
,3,$(SRCDIR
)/sal
/util
/sal.map
))
32 $(eval
$(call gb_Library_use_packages
,sal
,\
37 $(eval
$(call gb_Library_set_include
,sal
,\
42 $(eval
$(call gb_Library_add_defs
,sal
,\
43 $(if
$(filter $(ALLOC
),SYS_ALLOC TCMALLOC JEMALLOC
), \
46 $(if
$(filter $(OS
),IOS
), \
47 -DNO_CHILD_PROCESSES \
50 -DSAL_DLLIMPLEMENTATION \
51 -DRTL_OS
="\"$(RTL_OS)"\" \
52 -DRTL_ARCH
="\"$(RTL_ARCH)"\" \
55 $(eval
$(call gb_Library_use_libraries
,sal
,\
56 $(if
$(filter $(OS
),ANDROID
), \
62 $(eval
$(call gb_Library_use_externals
,sal
,\
67 $(eval
$(call gb_Library_use_system_win32_libs
,sal
,\
77 $(eval
$(call gb_Library_add_libs
,sal
,\
78 $(if
$(filter $(GUI
),UNX
), \
79 $(if
$(filter $(OS
),ANDROID
),, \
83 $(if
$(filter $(OS
),LINUX
), \
86 $(if
$(filter $(OS
),SOLARIS
), \
93 $(eval
$(call gb_Library_use_system_darwin_frameworks
,sal
,\
99 $(eval
$(call gb_Library_add_exception_objects
,sal
,\
101 sal
/osl
/all/debugbase \
102 sal
/osl
/all/loadmodulerelative \
105 sal
/osl
/all/utility \
106 sal
/rtl
/source
/alloc_arena \
107 sal
/rtl
/source
/alloc_cache \
108 sal
/rtl
/source
/alloc_fini \
109 sal
/rtl
/source
/alloc_global \
110 sal
/rtl
/source
/bootstrap \
111 sal
/rtl
/source
/byteseq \
112 sal
/rtl
/source
/cipher \
113 sal
/rtl
/source
/cmdargs \
115 sal
/rtl
/source
/digest \
116 sal
/rtl
/source
/hash \
117 sal
/rtl
/source
/locale \
118 sal
/rtl
/source
/logfile \
119 sal
/rtl
/source
/math \
120 sal
/rtl
/source
/memory \
121 sal
/rtl
/source
/random \
122 sal
/rtl
/source
/rtl_process \
123 sal
/rtl
/source
/strbuf \
124 sal
/rtl
/source
/strimp \
125 sal
/rtl
/source
/string \
126 sal
/rtl
/source
/unload \
128 sal
/rtl
/source
/ustrbuf \
129 sal
/rtl
/source
/ustring \
130 sal
/rtl
/source
/uuid \
131 sal
/textenc
/converter \
132 sal
/textenc
/convertsimple \
133 sal
/textenc
/handleundefinedunicodetotextchar \
134 sal
/textenc
/tcvtutf8 \
135 sal
/textenc
/tencinfo \
136 sal
/textenc
/textcvt \
137 sal
/textenc
/textenc \
138 sal
/textenc
/unichars \
140 $(eval
$(call gb_Library_add_cobjects
,sal
,\
141 sal
/osl
/all/filepath \
145 $(eval
$(call gb_Library_add_cxxflags
,sal
,\
151 $(eval
$(call gb_Library_add_exception_objects
,sal
,\
152 sal
/textenc
/context \
153 sal
/textenc
/convertbig5hkscs \
154 sal
/textenc
/converteuctw \
155 sal
/textenc
/convertgb18030 \
156 sal
/textenc
/convertisciidevangari \
157 sal
/textenc
/convertiso2022cn \
158 sal
/textenc
/convertiso2022jp \
159 sal
/textenc
/convertiso2022kr \
160 sal
/textenc
/convertsinglebytetobmpunicode \
162 sal
/textenc
/tcvtbyte \
164 sal
/textenc
/tcvtutf7 \
169 $(eval
$(call gb_Library_add_exception_objects
,sal
,\
170 sal
/osl
/unx
/conditn \
171 sal
/osl
/unx
/diagnose \
173 sal
/osl
/unx
/file_error_transl \
174 sal
/osl
/unx
/file_misc \
175 sal
/osl
/unx
/file_path_helper \
176 sal
/osl
/unx
/file_stat \
177 sal
/osl
/unx
/file_url \
178 sal
/osl
/unx
/file_volume \
180 sal
/osl
/unx
/process \
181 sal
/osl
/unx
/process_impl \
182 $(if
$(filter DESKTOP
,$(BUILD_TYPE
)), sal
/osl
/unx
/salinit
) \
183 sal
/osl
/unx
/uunxapi \
185 $(eval
$(call gb_Library_add_cobjects
,sal
,\
187 sal
/osl
/unx
/nlsupport \
189 sal
/osl
/unx
/profile \
190 sal
/osl
/unx
/readwrite_helper \
191 sal
/osl
/unx
/security \
194 sal
/osl
/unx
/tempfile \
199 $(eval
$(call gb_Library_add_cobject
,sal
,sal
/osl
/unx
/signal
, \
200 $(if
$(filter $(ENABLE_CRASHDUMP
),YES
)$(if
$(PRODUCT
),,TRUE
), \
201 -DSAL_ENABLE_CRASH_REPORT
) \
204 ifneq ($(filter $(OS
),MACOSX IOS
),)
205 $(eval
$(call gb_Library_add_exception_objects
,sal
,\
206 sal
/osl
/unx
/osxlocale \
209 ifneq ($(filter $(OS
),SOLARIS FREEBSD NETBSD MACOSX AIX OPENBSD DRAGONFLY
)$(filter $(OS
)$(CPUNAME
),LINUXSPARC
),)
210 $(eval
$(call gb_Library_add_cobjects
,sal
,\
211 sal
/osl
/unx
/backtrace \
214 ifneq ($(filter $(OS
)$(CPU
),SOLARISU SOLARISS NETBSDS LINUXS
),)
215 $(eval
$(call gb_Library_add_asmobjects
,sal
,\
216 sal
/osl
/unx
/asm
/interlck_sparc \
218 else ifeq ($(OS
)$(CPUNAME
),SOLARISINTEL
)
219 $(eval
$(call gb_Library_add_asmobjects
,sal
,\
220 sal
/osl
/unx
/asm
/interlck_x86 \
223 $(eval
$(call gb_Library_add_cobjects
,sal
,\
224 sal
/osl
/unx
/interlck \
231 # .IF "$(CCNUMVER)" >= "001400000000"
232 # $(eval $(call gb_Library_add_defs,sal,\
233 -D_CRT_NON_CONFORMING_SWPRINTFS \
237 $(eval
$(call gb_Library_add_exception_objects
,sal
,\
239 sal
/osl
/w32
/file_dirvol \
240 sal
/osl
/w32
/file_url \
242 sal
/osl
/w32
/path_helper \
243 sal
/osl
/w32
/process \
244 sal
/osl
/w32
/procimpl \
245 sal
/osl
/w32
/profile \
246 sal
/osl
/w32
/salinit \
249 sal
/osl
/w32
/tempfile \
251 $(eval
$(call gb_Library_add_cobjects
,sal
,\
252 sal
/osl
/w32
/conditn \
253 sal
/osl
/w32
/diagnose \
254 sal
/osl
/w32
/dllentry \
255 sal
/osl
/w32
/file_error \
256 sal
/osl
/w32
/interlck \
258 sal
/osl
/w32
/nlsupport \
260 sal
/osl
/w32
/security \
266 endif # ifeq ($(GUI),UNX)
268 # vim: set noet sw=4 ts=4: