office-gobmx/desktop/Library_sofficeapp.mk
Stephan Bergmann b1141fa610 Cut down on -pthread/-lpthread proliferation
Building against libstdc++ effectively always requires -pthread anyway (as
various standard C++ headers require it, see the comment added to
solenv/gbuild/platform/unxgcc.mk), so many explicit uses of -pthread/-lpthread
can be removed.

Doing a (partial) test build on Linux with Clang -stdlib=libc++ suggests that
libc++ indeed doesn't need -pthread as libstdc++ does.

The remaining uses of -pthread/-lpthread are mostly in configure.ac for the
various BSDs (which somebody else might want to clean up now), and related to
external projects.  I tried to be careful to remove -pthread/-lpthread from
makefiles only when C++ object files are involved (so -pthread will now be
included on the link command line by default).

Change-Id: I936e082839cb9a434bd273ce5a1f187a4245dfa1
Reviewed-on: https://gerrit.libreoffice.org/71291
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2019-04-25 21:27:43 +02:00

179 lines
4.1 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,sofficeapp))
$(eval $(call gb_Library_set_include,sofficeapp,\
$$(INCLUDE) \
-I$(SRCDIR)/desktop/inc \
-I$(SRCDIR)/desktop/source/inc \
-I$(SRCDIR)/desktop/source/deployment/inc \
))
$(eval $(call gb_Library_add_libs,sofficeapp,\
$(if $(filter LINUX %BSD SOLARIS, $(OS)), \
$(DLOPEN_LIBS) \
) \
))
$(eval $(call gb_Library_use_externals,sofficeapp, \
$(if $(ENABLE_BREAKPAD),breakpad) \
$(if $(filter OPENCL,$(BUILD_TYPE)),clew) \
boost_headers \
dbus \
icu_headers \
icui18n \
icuuc \
$(if $(filter-out iOS,$(OS)), \
curl \
)\
$(if $(ENABLE_ONLINE_UPDATE_MAR),\
orcus-parser \
orcus )\
))
$(eval $(call gb_Library_use_custom_headers,sofficeapp,\
officecfg/registry \
))
$(eval $(call gb_Library_use_api,sofficeapp,\
udkapi \
offapi \
))
$(eval $(call gb_Library_add_defs,sofficeapp,\
-DDESKTOP_DLLIMPLEMENTATION \
$(if $(filter WNT,$(OS)),-DENABLE_QUICKSTART_APPLET) \
$(if $(filter MACOSX,$(OS)),-DENABLE_QUICKSTART_APPLET) \
))
$(eval $(call gb_Library_set_precompiled_header,sofficeapp,$(SRCDIR)/desktop/inc/pch/precompiled_sofficeapp))
$(eval $(call gb_Library_use_libraries,sofficeapp,\
comphelper \
cppu \
cppuhelper \
$(if $(ENABLE_BREAKPAD), \
crashreport \
) \
deploymentmisc \
editeng \
i18nlangtag \
$(if $(filter OPENCL,$(BUILD_TYPE)),opencl) \
sal \
salhelper \
sb \
sfx \
svl \
svx \
svxcore \
svt \
tk \
tl \
ucbhelper \
utl \
vcl \
))
ifeq ($(OS),WNT)
$(eval $(call gb_Library_use_static_libraries,sofficeapp,\
$(if $(ENABLE_ONLINE_UPDATE_MAR),\
windows_process )\
))
endif
ifeq ($(OS),MACOSX)
$(eval $(call gb_Library_add_cxxflags,sofficeapp,\
$(gb_OBJCXXFLAGS) \
))
$(eval $(call gb_Library_use_system_darwin_frameworks,sofficeapp,\
Foundation \
))
endif
ifeq ($(OS),iOS)
$(eval $(call gb_Library_add_cflags,sofficeapp,\
$(gb_OBJCFLAGS) \
))
$(eval $(call gb_Library_add_cxxflags,sofficeapp,\
$(gb_OBJCXXFLAGS) \
))
endif
$(eval $(call gb_Library_add_exception_objects,sofficeapp,\
desktop/source/app/app \
desktop/source/app/appinit \
desktop/source/app/check_ext_deps \
desktop/source/app/cmdlineargs \
desktop/source/app/cmdlinehelp \
desktop/source/app/desktopcontext \
desktop/source/app/dispatchwatcher \
desktop/source/app/langselect \
desktop/source/app/lockfile2 \
desktop/source/app/officeipcthread \
desktop/source/app/opencl \
desktop/source/app/sofficemain \
$(if $(ENABLE_ONLINE_UPDATE_MAR),\
desktop/source/app/updater )\
desktop/source/app/userinstall \
desktop/source/migration/migration \
))
ifeq ($(DISABLE_GUI),TRUE)
$(eval $(call gb_Library_add_libs,sofficeapp,\
-lm $(DLOPEN_LIBS) \
))
else
ifeq ($(OS), $(filter LINUX %BSD SOLARIS, $(OS)))
ifeq ($(USING_X11),TRUE)
$(eval $(call gb_Library_use_static_libraries,sofficeapp,\
glxtest \
))
endif
$(eval $(call gb_Library_add_libs,sofficeapp,\
-lm $(DLOPEN_LIBS) \
-lX11 \
))
endif
endif
# LibreOfficeKit bits
ifneq ($(filter $(OS),ANDROID iOS MACOSX WNT),)
$(eval $(call gb_Library_add_exception_objects,sofficeapp,\
desktop/source/lib/init \
desktop/source/lib/lokinteractionhandler \
desktop/source/lib/lokclipboard \
$(if $(filter $(OS),ANDROID), \
desktop/source/lib/lokandroid) \
))
else
ifeq ($(USING_X11),TRUE)
$(eval $(call gb_Library_add_exception_objects,sofficeapp,\
desktop/source/lib/init \
desktop/source/lib/lokinteractionhandler \
desktop/source/lib/lokclipboard \
))
endif
ifeq ($(DISABLE_GUI),TRUE)
$(eval $(call gb_Library_add_exception_objects,sofficeapp,\
desktop/source/lib/init \
desktop/source/lib/lokinteractionhandler \
desktop/source/lib/lokclipboard \
))
endif
endif
# vim: set ts=4 sw=4 et: