720bf6ac86
Add a "kf6" VCL plugin that uses the KF6 (KDE Frameworks 6) libraries to provide a native KDE/Plasma file chooser, just like the kf5 VCL plugin does for KF5. Building the plugin is disabled by default and can be enabled by autogen option '--enable-kf6'. Selecting the VCL plugin can be done by starting LO with environment variable 'SAL_USE_VCLPLUGIN=kf6' set. The kf6 VCL plugin reuses the kf5 VCL plugin code. (The kf6 headers and sources for now just `#include` the kf5 ones.) This was quickly tested on KDE Neon unstable, which provides a daily snapshot of Plasma 6 and the KF6 libraries. (Regarding a potential release date, [1] mentions: "Plasma 6 is built on top of Qt 6 and is tentatively planned to be released in late 2023 or early 2024.") [1] https://community.kde.org/Plasma/Plasma_6 Change-Id: I4c2b7e3be8e60f1d8cf60119f6f3f642b71349f5 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/153438 Tested-by: Jenkins Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
86 lines
2.2 KiB
Makefile
86 lines
2.2 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/.
|
|
#
|
|
# This file incorporates work covered by the following license notice:
|
|
#
|
|
# Licensed to the Apache Software Foundation (ASF) under one or more
|
|
# contributor license agreements. See the NOTICE file distributed
|
|
# with this work for additional information regarding copyright
|
|
# ownership. The ASF licenses this file to you under the Apache
|
|
# License, Version 2.0 (the "License"); you may not use this file
|
|
# except in compliance with the License. You may obtain a copy of
|
|
# the License at http://www.apache.org/licenses/LICENSE-2.0 .
|
|
#
|
|
|
|
$(eval $(call gb_Library_Library,vclplug_kf6))
|
|
|
|
$(eval $(call gb_Library_set_plugin_for,vclplug_kf6,vcl))
|
|
|
|
$(eval $(call gb_Library_use_custom_headers,vclplug_kf6,vcl/unx/kf6))
|
|
|
|
$(eval $(call gb_Library_set_include,vclplug_kf6,\
|
|
$$(INCLUDE) \
|
|
-I$(SRCDIR)/vcl/inc \
|
|
-I$(SRCDIR)/vcl/inc/qt5 \
|
|
))
|
|
|
|
$(eval $(call gb_Library_add_defs,vclplug_kf6,\
|
|
-DVCLPLUG_KF_IMPLEMENTATION \
|
|
))
|
|
|
|
$(eval $(call gb_Library_use_sdk_api,vclplug_kf6))
|
|
|
|
$(eval $(call gb_Library_use_libraries,vclplug_kf6,\
|
|
vclplug_qt6 \
|
|
tl \
|
|
utl \
|
|
sot \
|
|
ucbhelper \
|
|
basegfx \
|
|
comphelper \
|
|
cppuhelper \
|
|
i18nlangtag \
|
|
i18nutil \
|
|
$(if $(ENABLE_JAVA), \
|
|
jvmaccess) \
|
|
cppu \
|
|
sal \
|
|
))
|
|
|
|
$(eval $(call gb_Library_use_externals,vclplug_kf6,\
|
|
boost_headers \
|
|
cairo \
|
|
graphite \
|
|
harfbuzz \
|
|
icuuc \
|
|
kf6 \
|
|
epoxy \
|
|
))
|
|
|
|
$(eval $(call gb_Library_add_exception_objects,vclplug_kf6,\
|
|
vcl/unx/kf6/KFFilePicker \
|
|
vcl/unx/kf6/KFSalInstance \
|
|
))
|
|
|
|
ifeq ($(OS),LINUX)
|
|
$(eval $(call gb_Library_add_libs,vclplug_kf6,\
|
|
-lm \
|
|
-ldl \
|
|
))
|
|
endif
|
|
|
|
# Workaround for clang+icecream (clang's -frewrite-includes
|
|
# doesn't handle Qt5's QT_HAS_INCLUDE that Qt5 uses for <chrono>),
|
|
# and probably the same is true for Qt6.
|
|
ifeq ($(COM_IS_CLANG),TRUE)
|
|
$(eval $(call gb_Library_add_cxxflags,vclplug_kf6, \
|
|
-include chrono \
|
|
))
|
|
endif
|
|
|
|
# vim: set noet sw=4 ts=4:
|