1# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
2#
3# This file is part of the LibreOffice project.
4#
5# This Source Code Form is subject to the terms of the Mozilla Public
6# License, v. 2.0. If a copy of the MPL was not distributed with this
7# file, You can obtain one at http://mozilla.org/MPL/2.0/.
8#
9
10$(eval $(call gb_Library_Library,xmlsecurity))
11
12$(eval $(call gb_Library_set_componentfile,xmlsecurity,xmlsecurity/util/xmlsecurity))
13
14$(eval $(call gb_Library_set_include,xmlsecurity,\
15	$$(INCLUDE) \
16	-I$(SRCDIR)/xmlsecurity/inc \
17))
18
19$(eval $(call gb_Library_add_defs,xmlsecurity,\
20    -DXMLSECURITY_DLLIMPLEMENTATION \
21))
22
23$(eval $(call gb_Library_use_externals,xmlsecurity,\
24	boost_headers \
25	$(if $(filter PDFIUM,$(BUILD_TYPE)),pdfium) \
26))
27
28$(eval $(call gb_Library_set_precompiled_header,xmlsecurity,xmlsecurity/inc/pch/precompiled_xmlsecurity))
29
30$(eval $(call gb_Library_use_sdk_api,xmlsecurity))
31
32$(eval $(call gb_Library_use_libraries,xmlsecurity,\
33	comphelper \
34	cppu \
35	cppuhelper \
36	sal \
37	sax \
38	svl \
39	svt \
40	svxcore \
41	tl \
42	ucbhelper \
43	utl \
44	vcl \
45	xo \
46	i18nlangtag \
47	xsec_xmlsec \
48))
49
50$(eval $(call gb_Library_add_exception_objects,xmlsecurity,\
51	xmlsecurity/source/component/certificatecontainer \
52	xmlsecurity/source/component/documentdigitalsignatures \
53	xmlsecurity/source/dialogs/certificatechooser \
54	xmlsecurity/source/dialogs/certificateviewer \
55	xmlsecurity/source/dialogs/digitalsignaturesdialog \
56	xmlsecurity/source/dialogs/macrosecurity \
57	xmlsecurity/source/framework/buffernode \
58	xmlsecurity/source/framework/elementcollector \
59	xmlsecurity/source/framework/elementmark \
60	xmlsecurity/source/framework/saxeventkeeperimpl \
61	xmlsecurity/source/framework/securityengine \
62	xmlsecurity/source/framework/signaturecreatorimpl \
63	xmlsecurity/source/framework/signatureengine \
64	xmlsecurity/source/framework/signatureverifierimpl \
65	xmlsecurity/source/framework/xmlsignaturetemplateimpl \
66	xmlsecurity/source/helper/documentsignaturehelper \
67	xmlsecurity/source/helper/documentsignaturemanager \
68	xmlsecurity/source/helper/ooxmlsecparser \
69	xmlsecurity/source/helper/ooxmlsecexporter \
70	xmlsecurity/source/helper/pdfsignaturehelper \
71	xmlsecurity/source/helper/xmlsignaturehelper2 \
72	xmlsecurity/source/helper/xmlsignaturehelper \
73	xmlsecurity/source/helper/xsecctl \
74	xmlsecurity/source/helper/xsecparser \
75	xmlsecurity/source/helper/xsecsign \
76	xmlsecurity/source/helper/xsecverify \
77	xmlsecurity/source/pdfio/pdfdocument \
78))
79
80$(eval $(call gb_Library_use_externals,xmlsecurity,\
81    libxml2 \
82))
83ifeq ($(OS),WNT)
84$(eval $(call gb_Library_add_defs,xmlsecurity,\
85    -DXMLSEC_CRYPTO_MSCRYPTO \
86))
87$(eval $(call gb_Library_use_system_win32_libs,xmlsecurity,\
88    crypt32 \
89    Ole32 \
90    Shell32 \
91))
92else
93ifneq (,$(filter DESKTOP,$(BUILD_TYPE))$(filter ANDROID,$(OS)))
94$(eval $(call gb_Library_add_defs,xmlsecurity,\
95    -DXMLSEC_CRYPTO_NSS \
96))
97$(eval $(call gb_Library_use_externals,xmlsecurity,\
98    nss3 \
99    plc4 \
100))
101endif # BUILD_TYPE=DESKTOP
102endif
103
104# vim: set noet sw=4 ts=4:
105