Files
loongoffice/winaccessibility/Library_winaccessibility.mk
Stephan Bergmann 6d1c8a4358 Avoid VCL_DLLPUBLIC SolarMutexGuard "taking over" template base class on MSVC
...and thus exporting osl::Guard<comphelper::SolarMutex> members from vcl.  With
--disable-pch that caused linking Library_acc to fail with duplicate symbols, as
accessibility/source/standard/vclxaccessiblebutton.cxx uses
comphelper::OExternalLockGuard (include/comphelper/accessiblecontexthelper.hxx),
which also derives from osl::Guard<comphelper::SolarMutex> (and is also all-
inline, and not marked as DLLPUBLIC), so also emits such members.  With
--enable-pch, vclxaccessiblebutton.cxx happens to see SolarMutexGuard from
include/vcl/svapp.hxx before comphelper::OExternalLockGuard, and thus doesn't
emit any such members.

As SolarMutexGuard is all-inline, there should not be much point in making it
VCL_DLLPUBLIC in the first place (was there ever since the class's introduction
in b450a32890184a18ed176dbf717e944190cbe643 "create a class SolarMutexGuard to
take a Guard on the SolarMutex"), so just drop that.

Change-Id: Ie9d493370c7d34981bb35e5d9e100cf987eb83ca
Reviewed-on: https://gerrit.libreoffice.org/42616
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2017-09-22 13:38:19 +02:00

81 lines
2.4 KiB
Makefile

# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
#
#
# This file is part of the LibreOffice project.
#
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
#
#
$(eval $(call gb_Library_Library,winaccessibility))
$(eval $(call gb_Library_use_custom_headers,winaccessibility,winaccessibility/ia2/idl))
$(eval $(call gb_Library_set_include,winaccessibility,\
$$(INCLUDE) \
-I$(SRCDIR)/winaccessibility/inc \
$(foreach i,$(ATL_INCLUDE), -I$(i)) \
))
$(eval $(call gb_Library_use_sdk_api,winaccessibility))
$(eval $(call gb_Library_set_componentfile,winaccessibility,winaccessibility/source/service/winaccessibility))
$(eval $(call gb_Library_add_exception_objects,winaccessibility,\
winaccessibility/source/service/AccObject \
winaccessibility/source/service/ResIDGenerator \
winaccessibility/source/service/AccObjectWinManager \
winaccessibility/source/service/AccObjectManagerAgent \
winaccessibility/source/service/AccEventListener \
winaccessibility/source/service/AccComponentEventListener \
winaccessibility/source/service/AccContainerEventListener \
winaccessibility/source/service/AccDialogEventListener \
winaccessibility/source/service/AccFrameEventListener \
winaccessibility/source/service/AccWindowEventListener \
winaccessibility/source/service/AccMenuEventListener \
winaccessibility/source/service/AccTextComponentEventListener \
winaccessibility/source/service/AccObjectContainerEventListener \
winaccessibility/source/service/AccParagraphEventListener \
winaccessibility/source/service/AccDescendantManagerEventListener \
winaccessibility/source/service/AccListEventListener \
winaccessibility/source/service/AccTableEventListener \
winaccessibility/source/service/AccTreeEventListener \
winaccessibility/source/service/AccTopWindowListener \
winaccessibility/source/service/msaaservice_impl \
))
$(eval $(call gb_Library_use_externals,winaccessibility,\
boost_headers \
))
$(eval $(call gb_Library_use_libraries,winaccessibility,\
UAccCOM \
comphelper \
cppu \
cppuhelper \
vcl \
sal \
tk \
tl \
))
$(eval $(call gb_Library_use_system_win32_libs,winaccessibility,\
oleacc \
advapi32 \
delayimp \
kernel32 \
ole32 \
oleaut32 \
shlwapi \
user32 \
uuid \
gdi32 \
shell32 \
imm32 \
winspool \
))
# vim:set noet sw=4 ts=4: