summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTim Blechmann <[email protected]>2025-07-04 15:21:17 +0800
committerTim Blechmann <[email protected]>2025-07-31 20:35:04 +0800
commitb32b70a8b90d64c51539cf79c642bf36b64a1b7d (patch)
treec6e93b2fd5372a3ec29668b3506457621c0d2b18
parentb6bcec27a6c8097d589d1327297a13a95b2c7d35 (diff)
Gui: make QtGui unity buildable on windows
* add consistent declarations for qt_pixelMultiplier / qt_regionToPath * exclude qwindowsfontdatabasebase.cpp due to duplicate OS2Table Pick-to: 6.10 Change-Id: Ica7e7143838241f0b7a0d6dca6b65fefbffec6d0 Reviewed-by: Oliver Wolff <[email protected]>
-rw-r--r--src/gui/CMakeLists.txt6
-rw-r--r--src/gui/painting/qpagelayout.cpp2
-rw-r--r--src/gui/painting/qpainter.cpp2
-rw-r--r--src/gui/painting/qpdf.cpp2
-rw-r--r--src/gui/painting/qtransform.cpp2
-rw-r--r--src/printsupport/kernel/qprinter.cpp2
-rw-r--r--src/widgets/graphicsview/qgraphicsitem.cpp2
-rw-r--r--src/widgets/graphicsview/qgraphicsview.cpp2
8 files changed, 10 insertions, 10 deletions
diff --git a/src/gui/CMakeLists.txt b/src/gui/CMakeLists.txt
index c93a923fe8b..6e858e85cc4 100644
--- a/src/gui/CMakeLists.txt
+++ b/src/gui/CMakeLists.txt
@@ -335,8 +335,8 @@ if(QT_FEATURE_pdf)
)
endif()
-if(WIN32 OR (UNIX AND NOT APPLE))
- set_target_properties(Gui PROPERTIES UNITY_BUILD OFF) # X11 define clashes/Windows oddities.
+if(UNIX AND NOT APPLE)
+ set_target_properties(Gui PROPERTIES UNITY_BUILD OFF) # X11 define clashes.
endif()
qt_internal_add_resource(Gui "gui_shaders"
@@ -491,6 +491,8 @@ qt_internal_extend_target(Gui CONDITION WIN32
dxgi
dxguid
d3d12
+ NO_UNITY_BUILD_SOURCES
+ text/windows/qwindowsfontdatabasebase.cpp # duplicate struct OS2Table
ATTRIBUTION_FILE_DIR_PATHS
../3rdparty/D3D12MemoryAllocator
)
diff --git a/src/gui/painting/qpagelayout.cpp b/src/gui/painting/qpagelayout.cpp
index a913f6fef75..e6f346dcdf2 100644
--- a/src/gui/painting/qpagelayout.cpp
+++ b/src/gui/painting/qpagelayout.cpp
@@ -37,7 +37,7 @@ Q_GUI_EXPORT qreal qt_pointMultiplier(QPageLayout::Unit unit)
}
// Multiplier for converting pixels to points.
-extern qreal qt_pixelMultiplier(int resolution);
+Q_GUI_EXPORT extern qreal qt_pixelMultiplier(int resolution);
Q_GUI_EXPORT QMarginsF qt_convertMargins(const QMarginsF &margins, QPageLayout::Unit fromUnits, QPageLayout::Unit toUnits)
{
diff --git a/src/gui/painting/qpainter.cpp b/src/gui/painting/qpainter.cpp
index 344bb8f1bef..914eb2fe407 100644
--- a/src/gui/painting/qpainter.cpp
+++ b/src/gui/painting/qpainter.cpp
@@ -2588,7 +2588,7 @@ QRegion QPainter::clipRegion() const
return region;
}
-extern QPainterPath qt_regionToPath(const QRegion &region);
+Q_GUI_EXPORT extern QPainterPath qt_regionToPath(const QRegion &region);
/*!
Returns the current clip path in logical coordinates.
diff --git a/src/gui/painting/qpdf.cpp b/src/gui/painting/qpdf.cpp
index db289460260..6419ef64435 100644
--- a/src/gui/painting/qpdf.cpp
+++ b/src/gui/painting/qpdf.cpp
@@ -1215,8 +1215,6 @@ void QPdfEngine::setupGraphicsState(QPaintEngine::DirtyFlags flags)
setPen();
}
-extern QPainterPath qt_regionToPath(const QRegion &region);
-
void QPdfEngine::updateClipPath(const QPainterPath &p, Qt::ClipOperation op)
{
Q_D(QPdfEngine);
diff --git a/src/gui/painting/qtransform.cpp b/src/gui/painting/qtransform.cpp
index 40b213c5047..eaa836bff90 100644
--- a/src/gui/painting/qtransform.cpp
+++ b/src/gui/painting/qtransform.cpp
@@ -1325,7 +1325,7 @@ QPolygon QTransform::map(const QPolygon &a) const
\sa QTransform::map()
*/
-extern QPainterPath qt_regionToPath(const QRegion &region);
+Q_GUI_EXPORT extern QPainterPath qt_regionToPath(const QRegion &region);
/*!
\fn QRegion QTransform::map(const QRegion &region) const
diff --git a/src/printsupport/kernel/qprinter.cpp b/src/printsupport/kernel/qprinter.cpp
index fcbb52661b7..cc95c97344a 100644
--- a/src/printsupport/kernel/qprinter.cpp
+++ b/src/printsupport/kernel/qprinter.cpp
@@ -39,7 +39,7 @@ using namespace Qt::StringLiterals;
return retValue; \
}
-extern qreal qt_pixelMultiplier(int resolution);
+Q_GUI_EXPORT extern qreal qt_pixelMultiplier(int resolution);
extern QMarginsF qt_convertMargins(const QMarginsF &margins, QPageLayout::Unit fromUnits, QPageLayout::Unit toUnits);
QPrinterInfo QPrinterPrivate::findValidPrinter(const QPrinterInfo &printer)
diff --git a/src/widgets/graphicsview/qgraphicsitem.cpp b/src/widgets/graphicsview/qgraphicsitem.cpp
index a06de022b85..d6c06ac8636 100644
--- a/src/widgets/graphicsview/qgraphicsitem.cpp
+++ b/src/widgets/graphicsview/qgraphicsitem.cpp
@@ -9313,7 +9313,7 @@ QVariant QGraphicsLineItem::extension(const QVariant &variant) const
QPixmap::createHeuristicMask(). The performance and memory consumption
is similar to MaskShape.
*/
-extern QPainterPath qt_regionToPath(const QRegion &region);
+Q_GUI_EXPORT extern QPainterPath qt_regionToPath(const QRegion &region);
class QGraphicsPixmapItemPrivate : public QGraphicsItemPrivate
{
diff --git a/src/widgets/graphicsview/qgraphicsview.cpp b/src/widgets/graphicsview/qgraphicsview.cpp
index 54065e8e580..60ccdc15a89 100644
--- a/src/widgets/graphicsview/qgraphicsview.cpp
+++ b/src/widgets/graphicsview/qgraphicsview.cpp
@@ -1115,7 +1115,7 @@ void QGraphicsViewPrivate::freeStyleOptionsArray(QStyleOptionGraphicsItem *array
delete [] array;
}
-extern QPainterPath qt_regionToPath(const QRegion &region);
+Q_GUI_EXPORT extern QPainterPath qt_regionToPath(const QRegion &region);
/*!
### Adjustments in findItems: mapToScene(QRect) forces us to adjust the