summaryrefslogtreecommitdiff
path: root/ucb/Library_ucppkg1.mk
blob: 355ab7356a57d12525780c60571dbcad51950a59 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
# -*- 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,ucppkg1))

$(eval $(call gb_Library_set_componentfile,ucppkg1,ucb/source/ucp/package/ucppkg1))

$(eval $(call gb_Library_use_external,ucppkg1,boost_headers))

$(eval $(call gb_Library_use_sdk_api,ucppkg1))

$(eval $(call gb_Library_use_libraries,ucppkg1,\
	comphelper \
	cppu \
	cppuhelper \
	sal \
	salhelper \
	ucbhelper \
	$(gb_UWINAPI) \
))

$(eval $(call gb_Library_add_exception_objects,ucppkg1,\
	ucb/source/ucp/package/pkgcontentcaps \
	ucb/source/ucp/package/pkgcontent \
	ucb/source/ucp/package/pkgdatasupplier \
	ucb/source/ucp/package/pkgprovider \
	ucb/source/ucp/package/pkgresultset \
	ucb/source/ucp/package/pkgservices \
	ucb/source/ucp/package/pkguri \
))

# vim: set noet sw=4 ts=4:
uced SVXCORE_DLLPUBLIC (include/svx/svxdllapi.h) has been done on Linux as follows: > git grep -w --line-number -e SVX_DLLPUBLIC --and --not -e '#define SVX_DLLPUBLIC' >LINES to produce a file LINES containing all 640 uses. (Conveniently, all uses happen to be on different lines.) Manually create a file TOKENS with 640 corresponding lines, each containing the (class or function) name that is made SVX_DLLPUBLIC by in the corresponding line in LINES. Then > nm -D --def instdir/program/libsvxcorelo.so | grep -ivw '[vw]' | c++filt >SVXCORESYMS > nm -D --def instdir/program/libsvxlo.so | grep -ivw '[vw]' | c++filt >SVXSYMS > n=$(cat TOKENS | wc -l) > for ((i=1;i<="$n";++i)); do > tok=$(head -n "$i" TOKENS | tail -1) > printf @ > grep -Fw "$tok" SVXCORESYMS >/dev/null && printf svxcore > printf @ > grep -Fw "$tok" SVXSYMS >/dev/null && printf svx > printf '@ ' > head -n "$i" LINES | tail -1 > done to generate 640 output lines detailing for each SVX_DLLPUBLIC name occurrene whether it is mentioned in exports from neither (@@@), only from svx (@@svx@), only from svxcore (@svxcore@@), or from both libraries (@svxcore@svx@). The numbers that gives is 10 @@@ 180 @@svx@ 424 @svxcore@@ 26 @svxcore@svx@ The 10 @@@ ask for follow-up clean up, but most of them are just left as SVX_DLLPUBLIC for now. The exceptions are sxv::ITextProvider (include/svx/itextprovider.hxx) and SdrCustomShapeGeometryItem::PropertyPairHash (include/svx/sdasitm.hxx, where PropertyPairHash is a member struct of SVXCORE_DLLPUBLIC SdrCustomShapeGeometryItem). Keeping them as SVX_DLLPUBLIC would cause "unresolved externals" errors when linking Library_svxcore on Windows. The 180 @@svx@ are fine to keep as-is, and the 424 @svxcore@@ need rewriting. The 26 @svxcore@svx@ needed manual inspection to decide (in some cases, the chosen name in TOKENS was a too generic function name like Fill, in other cases it was the name of a class exported from one library but also mentioned in the arguments of a function exported from the other). And for sdr::table::SdrTableObj the class itself is defined in svxcore while the static member functions ExportAsRTF and ImportAsRTF are defined in svx. But MSVC does not allow to mark the class as SVXCORE_DLLPUBLIC and the two static member functions as SVX_DLLPLUBIC, so move the two functions out of the class. (There appears to be no real necessity that they were static member functions in the first place; they don't even need to be friends of the class. Nevertheless, this mixture of functionality from svxcore and svx in include/svx/svdotable.hxx may ask for follow-up clean up, one way or another.) All the output lines that need rewriting (all the @svxcore@@ ones, and the manually picked subset of @@@ and @svxcore@svx@ ones) are copied into a new file CHANGE (containing 451 lines). Then > sed -E -e 's|^@.*@.*@ ([^:]+):([0-9]+):.*$|sed -i -e "\2 s/SVX_DLLPUBLIC/SVXCORE_DLLPUBLIC/" \1|' <CHANGE >COMMANDS > . COMMANDS to do the changes. Change-Id: If9b6dd1c9e9ba2eb883dbdac4385d28c6fc8a203 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/87794 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com> 2019-12-20SpacingListBox is now unusedCaolán McNamara Change-Id: I051200802c7841dc6feb9e3ab852385887c29b09 Reviewed-on: https://gerrit.libreoffice.org/85533 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com> 2019-12-19weld PageFooterPanelCaolán McNamara Change-Id: Ice9e7c5ab9c1085021ebb3561cfb2bd0a6727066 Reviewed-on: https://gerrit.libreoffice.org/85526 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com> 2019-10-30loplugin:finalclasses svxNoel Grandin Change-Id: If55e51b8627083ba3ece2b3270adb47668b25e9d Reviewed-on: https://gerrit.libreoffice.org/81705 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk> 2018-11-01Resolves: tdf#105081 and tdf#113420Caolán McNamara separate translations for Spacing: vs Margins: separate translations for Inch vs cm Change-Id: I9a2d8fe3ad0edde5afefe00258f1309f898130e8 Reviewed-on: https://gerrit.libreoffice.org/62699 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com> 2016-09-09loplugin:constantparam in svxNoel Grandin Change-Id: Id08850b90a0e286ff837dd6b0c1691fa7dc793fa Reviewed-on: https://gerrit.libreoffice.org/28746 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noelgrandin@gmail.com> 2016-08-25tdf#83830: Use SpacingListBox in Header/Footer and Sidebar Wrap PanelSusobhan Ghosh Change-Id: I80ea84b6eaabcf241b313d46695cffdd74174c08 Reviewed-on: https://gerrit.libreoffice.org/28104 Reviewed-by: Katarina Behrens <Katarina.Behrens@cib.de> Tested-by: Katarina Behrens <Katarina.Behrens@cib.de>