Update Qt to 6.3.0

- Repace ${_p}_DIR=${MODQT6_LIBDIR}/cmake with a simple
  Qt6_DIR=${MODQT6_LIBDIR}/cmake.
- Remove x11/qt6/qttools as a default build option. Qttools are dead.
- Fix USE_CCACHE
- Disable QML just-in-time compiler
This commit is contained in:
rsadowski 2022-05-06 18:59:58 +00:00
parent 0035e37e6a
commit db80b0c357
52 changed files with 2733 additions and 836 deletions

View File

@ -4,14 +4,32 @@
SUBDIR += qtsvg
SUBDIR += qtshadertools
SUBDIR += qtquicktimeline
SUBDIR += qtquickcontrols2
SUBDIR += qtquick3d
#SUBDIR += qtdoc
SUBDIR += qtdeclarative
SUBDIR += qtlanguageserver
SUBDIR += qtbase
SUBDIR += qt5compat
# no support for Wayland in Xenocara
# SUBDIR += qtwayland
#SUBDIR += qtwebview
#SUBDIR += qtwebsockets
#SUBDIR += qtwebengine
#SUBDIR += qtwebchannel
#SUBDIR += qtwayland
#SUBDIR += qtvirtualkeyboard
#SUBDIR += qtserialport
#SUBDIR += qtserialbus
#SUBDIR += qtsensors
#SUBDIR += qtscxml
#SUBDIR += qtremoteobjects
#SUBDIR += qtpositioning
#SUBDIR += qtnetworkauth
#SUBDIR += qtmultimedia
#SUBDIR += qtlottie
#SUBDIR += qtimageformats
#SUBDIR += qtdatavis3d
#SUBDIR += qtconnectivity
#SUBDIR += qtcharts
#SUBDIR += qtactiveqt
#SUBDIR += qt3d
.include <bsd.port.subdir.mk>

View File

@ -1,6 +1,6 @@
# Common source for Qt6 version
QT6_VERSION = 6.0.4
QT6_VERSION = 6.3.0
# This one is used for building dependencies for examples and documentation,
# which obviously should be in sync with core packages.
QT6_NEXT_VERSION = 6.1
QT6_NEXT_VERSION = 6.4

View File

@ -1,9 +1,13 @@
QT6NAME = Qt5Compat
COMMENT = Qt6 module contains unsupported Qt 5 APIs
SHARED_LIBS += Qt6Core5Compat 0.0 # 6.0
SHARED_LIBS += Qt6Core5Compat 0.1 # 6.3
WANTLIB += ${COMPILER_LIBCXX} Qt6Core c icudata icui18n icuuc
WANTLIB += m
WANTLIB += ${COMPILER_LIBCXX} GL Qt6Core Qt6Gui Qt6Network Qt6OpenGL
WANTLIB += Qt6Qml Qt6QmlModels Qt6Quick c icudata icui18n icuuc
WANTLIB += m xkbcommon
LIB_DEPENDS = x11/qt6/qtdeclarative>=${VERSION},<${NEXT_VERSION} \
x11/xkbcommon
.include <bsd.port.mk>

View File

@ -1,2 +1,2 @@
SHA256 (qt/qt5compat-everywhere-src-6.0.4.tar.xz) = q9C52nvMszojpZ8ooKKy3r3H4HQV3U913pp1GYSJXmk=
SIZE (qt/qt5compat-everywhere-src-6.0.4.tar.xz) = 602104
SHA256 (qt/qt5compat-everywhere-src-6.3.0.tar.xz) = Kxmb54DFDZIUUSuSLZTLJAsEEv1j9FnjVrdhAsrRcT4=
SIZE (qt/qt5compat-everywhere-src-6.3.0.tar.xz) = 8198576

View File

@ -63,17 +63,61 @@ include/X11/qt6/QtCore5Compat/qtcore5compat-config.h
include/X11/qt6/QtCore5Compat/qtcore5compatversion.h
include/X11/qt6/QtCore5Compat/qtextcodec.h
include/X11/qt6/QtCore5Compat/qxml.h
lib/cmake/Qt6/FindWrapIconv.cmake
lib/cmake/Qt6BuildInternals/StandaloneTests/Qt5CompatTestsConfig.cmake
lib/cmake/Qt6Core5Compat/
lib/cmake/Qt6Core5Compat/Qt6Core5CompatAdditionalTargetInfo.cmake
lib/cmake/Qt6Core5Compat/Qt6Core5CompatConfig.cmake
lib/cmake/Qt6Core5Compat/Qt6Core5CompatConfigVersion.cmake
lib/cmake/Qt6Core5Compat/Qt6Core5CompatConfigVersionImpl.cmake
lib/cmake/Qt6Core5Compat/Qt6Core5CompatDependencies.cmake
lib/cmake/Qt6Core5Compat/Qt6Core5CompatTargets${MODCMAKE_BUILD_SUFFIX}
lib/cmake/Qt6Core5Compat/Qt6Core5CompatTargets.cmake
lib/cmake/Qt6Core5Compat/Qt6Core5CompatVersionlessTargets.cmake
lib/cmake/Qt6Qml/
lib/cmake/Qt6Qml/QmlPlugins/
lib/cmake/Qt6Qml/QmlPlugins/Qt6qtgraphicaleffectspluginAdditionalTargetInfo.cmake
lib/cmake/Qt6Qml/QmlPlugins/Qt6qtgraphicaleffectspluginConfig.cmake
lib/cmake/Qt6Qml/QmlPlugins/Qt6qtgraphicaleffectspluginConfigVersion.cmake
lib/cmake/Qt6Qml/QmlPlugins/Qt6qtgraphicaleffectspluginConfigVersionImpl.cmake
lib/cmake/Qt6Qml/QmlPlugins/Qt6qtgraphicaleffectspluginTargets${MODCMAKE_BUILD_SUFFIX}
lib/cmake/Qt6Qml/QmlPlugins/Qt6qtgraphicaleffectspluginTargets.cmake
lib/cmake/Qt6Qml/QmlPlugins/Qt6qtgraphicaleffectsprivateAdditionalTargetInfo.cmake
lib/cmake/Qt6Qml/QmlPlugins/Qt6qtgraphicaleffectsprivateConfig.cmake
lib/cmake/Qt6Qml/QmlPlugins/Qt6qtgraphicaleffectsprivateConfigVersion.cmake
lib/cmake/Qt6Qml/QmlPlugins/Qt6qtgraphicaleffectsprivateConfigVersionImpl.cmake
lib/cmake/Qt6Qml/QmlPlugins/Qt6qtgraphicaleffectsprivateTargets${MODCMAKE_BUILD_SUFFIX}
lib/cmake/Qt6Qml/QmlPlugins/Qt6qtgraphicaleffectsprivateTargets.cmake
lib/libQt6Core5Compat.prl
@lib lib/libQt6Core5Compat.so.${LIBQt6Core5Compat_VERSION}
lib/metatypes/qt6core5compat_release_metatypes.json
lib/qt6/mkspecs/modules/qt_lib_core5compat.pri
lib/qt6/mkspecs/modules/qt_lib_core5compat_private.pri
lib/qt6/qml/
lib/qt6/qml/Qt5Compat/
lib/qt6/qml/Qt5Compat/GraphicalEffects/
lib/qt6/qml/Qt5Compat/GraphicalEffects/BrightnessContrast.qml
lib/qt6/qml/Qt5Compat/GraphicalEffects/ColorOverlay.qml
lib/qt6/qml/Qt5Compat/GraphicalEffects/Colorize.qml
lib/qt6/qml/Qt5Compat/GraphicalEffects/ConicalGradient.qml
lib/qt6/qml/Qt5Compat/GraphicalEffects/Desaturate.qml
lib/qt6/qml/Qt5Compat/GraphicalEffects/Displace.qml
lib/qt6/qml/Qt5Compat/GraphicalEffects/DropShadow.qml
lib/qt6/qml/Qt5Compat/GraphicalEffects/FastBlur.qml
lib/qt6/qml/Qt5Compat/GraphicalEffects/GammaAdjust.qml
lib/qt6/qml/Qt5Compat/GraphicalEffects/Glow.qml
lib/qt6/qml/Qt5Compat/GraphicalEffects/HueSaturation.qml
lib/qt6/qml/Qt5Compat/GraphicalEffects/LevelAdjust.qml
lib/qt6/qml/Qt5Compat/GraphicalEffects/LinearGradient.qml
lib/qt6/qml/Qt5Compat/GraphicalEffects/OpacityMask.qml
lib/qt6/qml/Qt5Compat/GraphicalEffects/RadialGradient.qml
lib/qt6/qml/Qt5Compat/GraphicalEffects/RectangularGlow.qml
lib/qt6/qml/Qt5Compat/GraphicalEffects/ThresholdMask.qml
@so lib/qt6/qml/Qt5Compat/GraphicalEffects/libqtgraphicaleffectsplugin.so
lib/qt6/qml/Qt5Compat/GraphicalEffects/plugins.qmltypes
lib/qt6/qml/Qt5Compat/GraphicalEffects/private/
lib/qt6/qml/Qt5Compat/GraphicalEffects/private/FastGlow.qml
@so lib/qt6/qml/Qt5Compat/GraphicalEffects/private/libqtgraphicaleffectsprivateplugin.so
lib/qt6/qml/Qt5Compat/GraphicalEffects/private/qmldir
lib/qt6/qml/Qt5Compat/GraphicalEffects/qmldir
share/qt6/modules/Core5Compat.json

View File

@ -29,64 +29,16 @@ MODQT_LRELEASE ?= ${MODQT6_LRELEASE}
MODQT6_LUPDATE = ${LOCALBASE}/bin/lupdate-qt6
MODQT_LUPDATE ?= ${MODQT6_LUPDATE}
_MODQT6_CMAKE_PKGS = \
Qt6 \
Qt6Core5Compat \
Qt6Concurrent \
Qt6Core \
Qt6DBus \
Qt6Gui \
Qt6Network \
Qt6OpenGL \
Qt6PrintSupport \
Qt6Sql \
Qt6Test \
Qt6Widgets \
Qt6Xml \
Qt6EglFSDeviceIntegration \
Qt6EglFsKmsSupport \
Qt6OpenGLExtensions \
Qt6XcbQpa \
Qt6EglFsKmsGbmSupport \
Qt6OpenGLWidgets \
Qt6Qml \
Qt6Quick \
Qt6QuickParticles \
Qt6QuickTest \
Qt6QuickWidgets \
Qt6QuickShapes \
Qt6QmlModels \
Qt6QmlWorkerScript \
Qt6Quick3D \
Qt6Quick3DAssetImport \
Qt6Quick3DRuntimeRender \
Qt6Quick3DUtils \
Qt6QuickControls2 \
Qt6QuickTemplates2 \
Qt6QuickControls2Impl \
Qt6ShaderTools \
Qt6Svg \
Qt6SvgWidgets \
Qt6Designer \
Qt6DesignerComponents \
Qt6Help \
Qt6UiTools
.for _p in ${_MODQT6_CMAKE_PKGS}
_MODQT6_SETUP += ${_p}_DIR=${MODQT6_LIBDIR}/cmake
.endfor
_MODQT6_SETUP += Qt6_DIR=${MODQT6_LIBDIR}/cmake
MODQT6_LIB_DEPENDS = x11/qt6/qtbase
MODQT_LIB_DEPENDS ?= ${MODQT6_LIB_DEPENDS}
MODQT6_BUILD_DEPENDS = x11/qt6/qttools
MODQT_BUILD_DEPENDS ?= ${MODQT6_BUILD_DEPENDS}
MODQT_DEPS ?= Yes
MODQT6_DEPS ?= ${MODQT_DEPS}
.if ${MODQT6_DEPS:L} == "yes"
LIB_DEPENDS += ${MODQT6_LIB_DEPENDS}
BUILD_DEPENDS += ${MODQT6_BUILD_DEPENDS}
.endif
CONFIGURE_ENV += ${_MODQT6_SETUP}

View File

@ -5,41 +5,41 @@ COMMENT-global = global Qt6 documentation internals
COMMENT-mysql = MySQL plugin for Qt6
COMMENT-psql = PostgresSQL plugin for Qt6
REVISION = 4
REVISION-main = 5
PKGNAME-mysql = qt6-mysql-${VERSION}
PKGNAME-global = qt6-global-${VERSION}
PKGNAME-psql = qt6-postgresql-${VERSION}
PKG_ARCH-global = *
SHARED_LIBS += Qt6Concurrent 0.0 # 6.0
SHARED_LIBS += Qt6Core 0.0 # 6.0
SHARED_LIBS += Qt6DBus 0.0 # 6.0
SHARED_LIBS += Qt6Gui 0.0 # 6.0
SHARED_LIBS += Qt6Network 0.0 # 6.0
SHARED_LIBS += Qt6OpenGL 0.0 # 6.0
SHARED_LIBS += Qt6PrintSupport 0.0 # 6.0
SHARED_LIBS += Qt6Sql 0.0 # 6.0
SHARED_LIBS += Qt6Test 0.0 # 6.0
SHARED_LIBS += Qt6Widgets 0.0 # 6.0
SHARED_LIBS += Qt6Xml 0.0 # 6.0
SHARED_LIBS += Qt6EglFSDeviceIntegration 0.0 # 6.0
SHARED_LIBS += Qt6EglFsKmsSupport 0.0 # 6.0
SHARED_LIBS += Qt6OpenGLExtensions 0.0 # 6.0
SHARED_LIBS += Qt6XcbQpa 0.0 # 6.0
SHARED_LIBS += Qt6EglFsKmsGbmSupport 0.0 # 6.0
SHARED_LIBS += Qt6OpenGLWidgets 0.0 # 6.0
SHARED_LIBS += Qt6Concurrent 0.1 # 6.3
SHARED_LIBS += Qt6Core 0.1 # 6.3
SHARED_LIBS += Qt6DBus 0.1 # 6.3
SHARED_LIBS += Qt6Gui 0.1 # 6.3
SHARED_LIBS += Qt6Network 0.1 # 6.3
SHARED_LIBS += Qt6OpenGL 0.1 # 6.3
SHARED_LIBS += Qt6PrintSupport 0.1 # 6.3
SHARED_LIBS += Qt6Sql 0.1 # 6.3
SHARED_LIBS += Qt6Test 0.1 # 6.3
SHARED_LIBS += Qt6Widgets 0.1 # 6.3
SHARED_LIBS += Qt6Xml 0.1 # 6.3
SHARED_LIBS += Qt6EglFSDeviceIntegration 0.1 # 6.3
SHARED_LIBS += Qt6EglFsKmsSupport 0.1 # 6.3
SHARED_LIBS += Qt6OpenGLExtensions 0.1 # 6.3
SHARED_LIBS += Qt6XcbQpa 0.1 # 6.3
SHARED_LIBS += Qt6EglFsKmsGbmSupport 0.1 # 6.3
SHARED_LIBS += Qt6OpenGLWidgets 0.1 # 6.3
WANTLIB-global =
WANTLIB-main += ${COMPILER_LIBCXX} EGL GL X11 atk-1.0 b2 brotlidec c cairo
WANTLIB-main += cairo-gobject crypto cups dbus-1 double-conversion
WANTLIB-main += drm execinfo fontconfig freetype gbm gdk-3 gdk_pixbuf-2.0
WANTLIB-main += gio-2.0 glib-2.0 gobject-2.0 gthread-2.0 gtk-3 harfbuzz
WANTLIB-main += icudata icui18n icuuc iodbc jpeg m pango-1.0 pangocairo-1.0
WANTLIB-main += pcre2-16 png ssl z zstd
WANTLIB-main += ${COMPILER_LIBCXX} EGL GL ICE SM X11 X11-xcb atk-1.0
WANTLIB-main += b2 brotlidec c cairo cairo-gobject crypto cups dbus-1
WANTLIB-main += double-conversion drm execinfo fontconfig freetype
WANTLIB-main += gbm gdk-3 gdk_pixbuf-2.0 gio-2.0 glib-2.0 gobject-2.0
WANTLIB-main += gthread-2.0 gtk-3 harfbuzz icudata icui18n icuuc iodbc
WANTLIB-main += jpeg m pango-1.0 pangocairo-1.0 pcre2-16 png ssl xcb
WANTLIB-main += xcb-glx xcb-icccm xcb-image xcb-keysyms xcb-randr xcb-render
WANTLIB-main += xcb-render-util xcb-shape xcb-shm xcb-sync xcb-xfixes
WANTLIB-main += xcb-xkb xkbcommon xkbcommon-x11 z zstd
# those come from gthread-2.0, not used by Qt itself
WANTLIB-main += intl
@ -56,6 +56,7 @@ LIB_DEPENDS-main = ${LIB_DEPENDS} \
databases/iodbc \
devel/atk \
devel/harfbuzz \
x11/xkbcommon \
devel/pango \
devel/pcre2 \
graphics/cairo \
@ -71,7 +72,6 @@ LIB_DEPENDS-global =
LIB_DEPENDS-main += devel/gettext,-runtime
LIB_DEPENDS-mysql = ${BASE_PKGPATH},-main>=${VERSION:R},<${NEXT_VERSION} \
${MODGCC4_CPPLIBDEP} \
databases/mariadb
@ -90,8 +90,14 @@ RUN_DEPENDS-global =
RUN_DEPENDS-mysql =
RUN_DEPENDS-psql =
CONFIGURE_ARGS = -DQT_DEFAULT_PLATFORM_DEFINITION_DIR_ABSOLUTE=${WRKDIST}/mkspecs/openbsd-g++/
.include <bsd.port.arch.mk>
.if ${PROPERTIES:Mclang}
CONFIGURE_ARGS += -DQT_QMAKE_TARGET_MKSPEC=openbsd-clang
.else
CONFIGURE_ARGS += -DQT_QMAKE_TARGET_MKSPEC=openbsd-g++
.endif
# cmake/configure-cmake-mapping.md
CONFIGURE_ARGS += -DCMAKE_INSTALL_PREFIX=${PREFIX} \
-DINSTALL_BINDIR=lib/qt6/bin \
-DINSTALL_DOCDIR=share/doc/qt6 \
@ -101,13 +107,14 @@ CONFIGURE_ARGS += -DCMAKE_INSTALL_PREFIX=${PREFIX} \
-DINSTALL_MKSPECSDIR=lib/qt6/mkspecs \
-DINSTALL_EXAMPLESDIR=share/doc/qt6/examples \
-DINSTALL_PLUGINSDIR=lib/qt6/plugins \
-DBUILD_WITH_PCH=OFF \
-DQT_FEATURE_journald=OFF \
-DQT_FEATURE_openssl_linked=ON \
-DQT_FEATURE_dtls=OFF
LDFLAGS += -lexecinfo
MODQT6_DEPS = no
MODQT6_DEPS = No
post-extract:
mkdir -p ${WRKDIST}/mkspecs/openbsd-clang

View File

@ -1,2 +1,2 @@
SHA256 (qt/qtbase-everywhere-src-6.0.4.tar.xz) = xCdXky18smSgQ8wqDu0wd02Tj2PbZ7//EdjjGcDIeZo=
SIZE (qt/qtbase-everywhere-src-6.0.4.tar.xz) = 46415776
SHA256 (qt/qtbase-everywhere-src-6.3.0.tar.xz) = uGWq5DNX95KzsKFiiZ2b9qE5OlXE5eTt5TFrFXsaD5k=
SIZE (qt/qtbase-everywhere-src-6.3.0.tar.xz) = 47004304

View File

@ -1,9 +1,9 @@
Index: cmake/QtBuild.cmake
--- cmake/QtBuild.cmake.orig
+++ cmake/QtBuild.cmake
@@ -330,6 +330,20 @@ elseif(QNX)
set(QT_DEFAULT_MKSPEC qnx-${arch}-qcc)
endif()
@@ -436,6 +436,20 @@ if(CMAKE_HOST_APPLE AND APPLE)
set(CMAKE_${lang}_ARCHIVE_APPEND "<CMAKE_AR> qS <TARGET> <LINK_FLAGS> <OBJECTS>")
set(CMAKE_${lang}_ARCHIVE_FINISH "<CMAKE_RANLIB> -no_warning_for_no_symbols <TARGET>")
endforeach()
+elseif(FREEBSD)
+ if(CLANG)
@ -21,4 +21,4 @@ Index: cmake/QtBuild.cmake
+ endif()
endif()
if(NOT QT_QMAKE_TARGET_MKSPEC)
# Functions and macros:

View File

@ -1,21 +1,21 @@
Index: cmake/QtCompilerOptimization.cmake
--- cmake/QtCompilerOptimization.cmake.orig
+++ cmake/QtCompilerOptimization.cmake
@@ -137,7 +137,7 @@ endif()
@@ -94,7 +94,7 @@ endif()
# gcc and clang base
if(GCC OR CLANG)
if(GCC OR CLANG AND NOT WASM)
set(QT_CFLAGS_OPTIMIZE "-O2")
- set(QT_CFLAGS_OPTIMIZE_FULL "-O3")
+ set(QT_CFLAGS_OPTIMIZE_FULL "")
set(QT_CFLAGS_OPTIMIZE_DEBUG "-Og")
set(QT_CFLAGS_OPTIMIZE_SIZE "-Os")
@@ -148,7 +148,7 @@ endif()
@@ -105,7 +105,7 @@ endif()
# Flags that CMake might set, aka flags the compiler would see as valid values.
if(GCC OR CLANG OR QCC OR ICC)
if(GCC OR CLANG OR QCC)
- set(QT_CFLAGS_OPTIMIZE_VALID_VALUES "-O0" "-O1" "-O2" "-O3" "-Os" "-Oz")
+ set(QT_CFLAGS_OPTIMIZE_VALID_VALUES "-O0" "-O1" "-O2" "-Os" "-Oz")
+ set(QT_CFLAGS_OPTIMIZE_VALID_VALUES "-O0" "-O1" "-O2" "" "-Os" "-Oz")
endif()

View File

@ -1,8 +1,8 @@
Index: cmake/QtFeature.cmake
--- cmake/QtFeature.cmake.orig
+++ cmake/QtFeature.cmake
@@ -1023,4 +1023,20 @@ function(qt_make_features_available target)
endforeach()
@@ -1054,7 +1054,23 @@ function(qt_get_platform_try_compile_vars out_var)
set("${out_var}" "${flags_cmd_line}" PARENT_SCOPE)
endfunction()
+# function to add libs to an INTERFACE library target if the lib exists,
@ -10,7 +10,7 @@ Index: cmake/QtFeature.cmake
+# LIBRARIES argument if PROJECT_PATH is not set.
+function(qt_test_lib_target)
+qt_parse_all_arguments(arg "qt_test_lib_target" "" "TARGET" "LIBS" ${ARGN})
# Set out_var to the first value of CMAKE_OSX_ARCHITECTURES.
+if(TARGET ${arg_TARGET})
+ return()
+endif()
@ -22,3 +22,6 @@ Index: cmake/QtFeature.cmake
+ endif()
+endforeach()
+endfunction()
# Sets an empty string if no architecture is present.
function(qt_internal_get_first_osx_arch out_var)
set(value "")

View File

@ -1,7 +1,7 @@
Index: cmake/QtPlatformSupport.cmake
--- cmake/QtPlatformSupport.cmake.orig
+++ cmake/QtPlatformSupport.cmake
@@ -20,6 +20,8 @@ qt_set01(WASM CMAKE_SYSTEM_NAME STREQUAL "Emscripten")
@@ -21,6 +21,8 @@ qt_set01(SOLARIS CMAKE_SYSTEM_NAME STREQUAL "SunOS")
qt_set01(BSD APPLE OR OPENBSD OR FREEBSD OR NETBSD)

View File

@ -1,11 +1,11 @@
Index: cmake/QtProcessConfigureArgs.cmake
--- cmake/QtProcessConfigureArgs.cmake.orig
+++ cmake/QtProcessConfigureArgs.cmake
@@ -133,6 +133,7 @@ defstub(qt_feature_definition)
@@ -175,6 +175,7 @@ defstub(qt_feature_definition)
defstub(qt_find_package)
defstub(set_package_properties)
defstub(qt_qml_find_python)
+defstub(qt_test_lib_target)
defstub(qt_set01)
defstub(qt_internal_check_if_linker_is_available)
####################################################################################################

View File

@ -1,25 +0,0 @@
Index: qmake/Makefile.unix
--- qmake/Makefile.unix.orig
+++ qmake/Makefile.unix
@@ -164,7 +164,7 @@ DEPEND_SRC = \
# by configure); QTSRCS2 may include *.mm entries on macOS.
# See below for special handling of qlibraryinfo.cpp
-CPPFLAGS = -g $(EXTRA_CPPFLAGS) \
+CPPFLAGS += -g $(EXTRA_CPPFLAGS) \
-I$(QMKSRC) -I$(QMKLIBSRC) -I$(QMKGENSRC) \
-I$(SOURCE_PATH)/src/3rdparty/tinycbor/src \
-I$(SOURCE_PATH)/src/3rdparty/pcre2/src \
@@ -180,9 +180,9 @@ CPPFLAGS = -g $(EXTRA_CPPFLAGS) \
-DPCRE2_DISABLE_JIT \
$(EXTRA_CPPFLAGS)
-CXXFLAGS = $(EXTRA_CXXFLAGS) $(CONFIG_CXXFLAGS) $(CPPFLAGS)
-CFLAGS = $(CPPFLAGS) $(CONFIG_CFLAGS)
-LFLAGS = $(EXTRA_LFLAGS) $(CONFIG_LFLAGS)
+CXXFLAGS += $(EXTRA_CXXFLAGS) $(CONFIG_CXXFLAGS) $(CPPFLAGS)
+CFLAGS += $(CPPFLAGS) $(CONFIG_CFLAGS)
+LFLAGS = $(LDFLAGS) $(EXTRA_LFLAGS) $(CONFIG_LFLAGS)
first all: $(BUILD_PATH)/bin/qmake$(EXEEXT)
qmake: $(BUILD_PATH)/bin/qmake$(EXEEXT)

View File

@ -1,7 +1,7 @@
Index: qmake/generators/unix/unixmake2.cpp
--- qmake/generators/unix/unixmake2.cpp.orig
+++ qmake/generators/unix/unixmake2.cpp
@@ -63,6 +63,10 @@ UnixMakefileGenerator::writeMakefile(QTextStream &t)
@@ -66,6 +66,10 @@ UnixMakefileGenerator::writeMakefile(QTextStream &t)
if (writeDummyMakefile(t))
return true;
@ -12,7 +12,7 @@ Index: qmake/generators/unix/unixmake2.cpp
if (project->first("TEMPLATE") == "app" ||
project->first("TEMPLATE") == "lib" ||
project->first("TEMPLATE") == "aux") {
@@ -189,16 +193,17 @@ UnixMakefileGenerator::writeMakeParts(QTextStream &t)
@@ -192,16 +196,17 @@ UnixMakefileGenerator::writeMakeParts(QTextStream &t)
writeExportedVariables(t);
t << "####### Compiler, tools and options\n\n";
@ -37,7 +37,7 @@ Index: qmake/generators/unix/unixmake2.cpp
for(int i = 0; i < incs.size(); ++i) {
const ProString &inc = incs.at(i);
if (inc.isEmpty())
@@ -214,9 +219,9 @@ UnixMakefileGenerator::writeMakeParts(QTextStream &t)
@@ -217,9 +222,9 @@ UnixMakefileGenerator::writeMakeParts(QTextStream &t)
writeDefaultVariables(t);
if(!project->isActiveConfig("staticlib")) {
@ -49,7 +49,7 @@ Index: qmake/generators/unix/unixmake2.cpp
<< fixLibFlags("LIBS_PRIVATE").join(' ') << ' '
<< fixLibFlags("QMAKE_LIBS").join(' ') << ' '
<< fixLibFlags("QMAKE_LIBS_PRIVATE").join(' ') << Qt::endl;
@@ -224,8 +229,8 @@ UnixMakefileGenerator::writeMakeParts(QTextStream &t)
@@ -227,8 +232,8 @@ UnixMakefileGenerator::writeMakeParts(QTextStream &t)
t << "AR = " << var("QMAKE_AR") << Qt::endl;
t << "RANLIB = " << var("QMAKE_RANLIB") << Qt::endl;
@ -60,7 +60,7 @@ Index: qmake/generators/unix/unixmake2.cpp
t << Qt::endl;
@@ -259,12 +264,19 @@ UnixMakefileGenerator::writeMakeParts(QTextStream &t)
@@ -262,12 +267,19 @@ UnixMakefileGenerator::writeMakeParts(QTextStream &t)
t << "TARGET0 = " << fileVar("TARGET_") << Qt::endl;
} else if (!project->isActiveConfig("unversioned_libname")) {
t << "TARGET0 = " << fileVar("TARGET_") << Qt::endl;
@ -85,7 +85,7 @@ Index: qmake/generators/unix/unixmake2.cpp
}
}
}
@@ -589,7 +601,8 @@ UnixMakefileGenerator::writeMakeParts(QTextStream &t)
@@ -601,7 +613,8 @@ UnixMakefileGenerator::writeMakeParts(QTextStream &t)
if(!project->isEmpty("QMAKE_POST_LINK"))
t << "\n\t" << var("QMAKE_POST_LINK");
t << Qt::endl << Qt::endl;
@ -95,7 +95,7 @@ Index: qmake/generators/unix/unixmake2.cpp
t << "\n\t";
if (!project->isActiveConfig("unversioned_libname"))
@@ -623,7 +636,22 @@ UnixMakefileGenerator::writeMakeParts(QTextStream &t)
@@ -635,7 +648,22 @@ UnixMakefileGenerator::writeMakeParts(QTextStream &t)
if(!project->isEmpty("QMAKE_POST_LINK"))
t << "\n\t" << var("QMAKE_POST_LINK");
t << Qt::endl << Qt::endl;
@ -118,7 +118,7 @@ Index: qmake/generators/unix/unixmake2.cpp
t << "\n\t"
<< "-$(DEL_FILE) $(TARGET) $(TARGET0)\n\t"
<< var("QMAKE_LINK_SHLIB_CMD") << "\n\t";
@@ -1252,6 +1280,12 @@ void UnixMakefileGenerator::init2()
@@ -1264,6 +1292,12 @@ void UnixMakefileGenerator::init2()
project->values("TARGET_x").append("lib" + project->first("TARGET") + "." +
project->first("VER_MAJ"));
project->values("TARGET") = project->values("TARGET_x");
@ -131,7 +131,7 @@ Index: qmake/generators/unix/unixmake2.cpp
} else if (!project->isEmpty("QMAKE_AIX_SHLIB")) {
project->values("PRL_TARGET").prepend("lib" + project->first("TARGET"));
project->values("TARGET_").append(project->first("QMAKE_PREFIX_STATICLIB") + project->first("TARGET")
@@ -1472,18 +1506,33 @@ UnixMakefileGenerator::writeLibtoolFile()
@@ -1503,18 +1537,33 @@ UnixMakefileGenerator::writeLibtoolFile()
<< QT_VERSION_STR << ")";
t << "\n";

View File

@ -2,7 +2,7 @@ Index: qmake/generators/unix/unixmake.h
--- qmake/generators/unix/unixmake.h.orig
+++ qmake/generators/unix/unixmake.h
@@ -61,6 +61,7 @@ class UnixMakefileGenerator : public MakefileGenerator
std::pair<bool, QString> writeObjectsPart(QTextStream &, bool do_incremental);
bool writeObjectsPart(QTextStream &, bool do_incremental);
private:
void init2();
+ void separateInternalLibdirs(ProStringList &libs, ProStringList &libdirsInt, QString prefix);

View File

@ -0,0 +1,33 @@
Index: src/corelib/plugin/qelfparser_p.cpp
--- src/corelib/plugin/qelfparser_p.cpp.orig
+++ src/corelib/plugin/qelfparser_p.cpp
@@ -363,9 +363,9 @@ Q_DECL_UNUSED Q_DECL_COLD_FUNCTION static QDebug &oper
case ELFOSABI_SYSV: d << " (SYSV"; break;
case ELFOSABI_HPUX: d << " (HP-UX"; break;
case ELFOSABI_NETBSD: d << " (NetBSD"; break;
- case ELFOSABI_GNU: d << " (GNU/Linux"; break;
+ case ELFOSABI_LINUX: d << " (GNU/Linux"; break;
case ELFOSABI_SOLARIS: d << " (Solaris"; break;
- case ELFOSABI_AIX: d << " (AIX"; break;
+ //case ELFOSABI_AIX: d << " (AIX"; break;
case ELFOSABI_IRIX: d << " (IRIX"; break;
case ELFOSABI_FREEBSD: d << " (FreeBSD"; break;
case ELFOSABI_OPENBSD: d << " (OpenBSD"; break;
@@ -409,7 +409,7 @@ Q_DECL_UNUSED Q_DECL_COLD_FUNCTION static QDebug &oper
case EM_NONE: d << ", no machine"; break;
case EM_ARM: d << ", ARM"; break;
case EM_AARCH64: d << ", AArch64"; break;
- case EM_BLACKFIN: d << ", Blackfin"; break;
+ //case EM_BLACKFIN: d << ", Blackfin"; break;
case EM_IA_64: d << ", IA-64"; break;
case EM_MIPS: d << ", MIPS"; break;
case EM_PPC: d << ", PowerPC"; break;
@@ -417,7 +417,7 @@ Q_DECL_UNUSED Q_DECL_COLD_FUNCTION static QDebug &oper
#ifdef EM_RISCV
case EM_RISCV: d << ", RISC-V"; break;
#endif
- case EM_S390: d << ", S/390"; break;
+ //case EM_S390: d << ", S/390"; break;
case EM_SH: d << ", SuperH"; break;
case EM_SPARC: d << ", SPARC"; break;
case EM_SPARCV9: d << ", SPARCv9"; break;

View File

@ -11,7 +11,7 @@ Index: src/network/kernel/qnetworkinterface_unix.cpp
#include <qplatformdefs.h>
QT_BEGIN_NAMESPACE
@@ -450,7 +453,9 @@ static QNetworkInterface::InterfaceType probeIfType(in
@@ -460,7 +463,9 @@ static QNetworkInterface::InterfaceType probeIfType(in
return QNetworkInterface::Ieee1394;
case IFT_GIF:

View File

@ -1,14 +0,0 @@
https://github.com/gentoo/libressl/blob/master/dev-qt/qtnetwork/files/qtnetwork-5.15.2-libressl.patch
Index: src/network/ssl/qsslcertificate_openssl.cpp
--- src/network/ssl/qsslcertificate_openssl.cpp.orig
+++ src/network/ssl/qsslcertificate_openssl.cpp
@@ -691,7 +691,7 @@ static QMultiMap<QByteArray, QString> _q_mapFromX509Na
unsigned char *data = nullptr;
int size = q_ASN1_STRING_to_UTF8(&data, q_X509_NAME_ENTRY_get_data(e));
info.insert(name, QString::fromUtf8((char*)data, size));
-#if QT_CONFIG(opensslv11)
+#if QT_CONFIG(opensslv11) && !defined(LIBRESSL_VERSION_NUMBER)
q_CRYPTO_free(data, nullptr, 0);
#else
q_CRYPTO_free(data);

View File

@ -1,65 +0,0 @@
https://github.com/gentoo/libressl/blob/master/dev-qt/qtnetwork/files/qtnetwork-5.15.2-libressl.patch
Index: src/network/ssl/qsslcontext_openssl.cpp
--- src/network/ssl/qsslcontext_openssl.cpp.orig
+++ src/network/ssl/qsslcontext_openssl.cpp
@@ -341,9 +341,11 @@ init_context:
return;
}
+#ifndef LIBRESSL_VERSION_NUMBER
// A nasty hacked OpenSSL using a level that will make our auto-tests fail:
if (q_SSL_CTX_get_security_level(sslContext->ctx) > 1 && *forceSecurityLevel())
q_SSL_CTX_set_security_level(sslContext->ctx, 1);
+#endif // LIBRESSL_VERSION_NUMBER
const long anyVersion =
#if QT_CONFIG(dtls)
@@ -397,16 +399,28 @@ init_context:
maxVersion = DTLS1_VERSION;
break;
case QSsl::DtlsV1_0OrLater:
+#ifdef DTLS_MAX_VERSION
minVersion = DTLS1_VERSION;
maxVersion = DTLS_MAX_VERSION;
+#else
+ Q_UNREACHABLE();
+#endif // DTLS_MAX_VERSION
break;
case QSsl::DtlsV1_2:
+#ifdef DTLS1_2_VERSION
minVersion = DTLS1_2_VERSION;
maxVersion = DTLS1_2_VERSION;
+#else
+ Q_UNREACHABLE();
+#endif // DTLS1_2_VERSION
break;
case QSsl::DtlsV1_2OrLater:
+#if defined(DTLS1_2_VERSION) && defined(DTLS_MAX_VERSION)
minVersion = DTLS1_2_VERSION;
maxVersion = DTLS_MAX_VERSION;
+#else
+ Q_UNREACHABLE();
+#endif // DTLS1_2_VERSION && DTLS_MAX_VERSION
break;
case QSsl::TlsV1_3OrLater:
#ifdef TLS1_3_VERSION
@@ -712,6 +726,7 @@ void QSslContext::applyBackendConfig(QSslContext *sslC
}
#endif // ocsp
+#ifndef LIBRESSL_VERSION_NUMBER
QSharedPointer<SSL_CONF_CTX> cctx(q_SSL_CONF_CTX_new(), &q_SSL_CONF_CTX_free);
if (cctx) {
q_SSL_CONF_CTX_set_ssl_ctx(cctx.data(), sslContext->ctx);
@@ -758,7 +773,9 @@ void QSslContext::applyBackendConfig(QSslContext *sslC
sslContext->errorStr = msgErrorSettingBackendConfig(QSslSocket::tr("SSL_CONF_finish() failed"));
sslContext->errorCode = QSslError::UnspecifiedError;
}
- } else {
+ } else
+#endif // LIBRESSL_VERSION_NUMBER
+ {
sslContext->errorStr = msgErrorSettingBackendConfig(QSslSocket::tr("SSL_CONF_CTX_new() failed"));
sslContext->errorCode = QSslError::UnspecifiedError;
}

View File

@ -1,19 +0,0 @@
https://github.com/gentoo/libressl/blob/master/dev-qt/qtnetwork/files/qtnetwork-5.15.2-libressl.patch
Index: src/network/ssl/qsslcontext_openssl_p.h
--- src/network/ssl/qsslcontext_openssl_p.h.orig
+++ src/network/ssl/qsslcontext_openssl_p.h
@@ -61,6 +61,13 @@
QT_BEGIN_NAMESPACE
+#ifndef DTLS_ANY_VERSION
+#define DTLS_ANY_VERSION 0x1FFFF
+#endif
+#ifndef TLS_ANY_VERSION
+#define TLS_ANY_VERSION 0x10000
+#endif
+
#ifndef QT_NO_SSL
class QSslContext

View File

@ -1,35 +0,0 @@
https://github.com/gentoo/libressl/blob/master/dev-qt/qtnetwork/files/qtnetwork-5.15.2-libressl.patch
Index: src/network/ssl/qsslsocket_openssl.cpp
--- src/network/ssl/qsslsocket_openssl.cpp.orig
+++ src/network/ssl/qsslsocket_openssl.cpp
@@ -353,7 +353,11 @@ static int q_ssl_psk_use_session_callback(SSL *ssl, co
return 1; // need to return 1 or else "the connection setup fails."
}
+#endif // TLS1_3_VERSION
+#endif // !OPENSSL_NO_PSK
+
+#ifdef TLS1_3_VERSION
int q_ssl_sess_set_new_cb(SSL *ssl, SSL_SESSION *session)
{
if (!ssl) {
@@ -371,8 +375,6 @@ int q_ssl_sess_set_new_cb(SSL *ssl, SSL_SESSION *sessi
}
#endif // TLS1_3_VERSION
-#endif // !OPENSSL_NO_PSK
-
#if QT_CONFIG(ocsp)
int qt_OCSP_status_server_callback(SSL *ssl, void *ocspRequest)
@@ -771,7 +773,7 @@ bool QSslSocketBackendPrivate::initSslContext()
else if (mode == QSslSocket::SslServerMode)
q_SSL_set_psk_server_callback(ssl, &q_ssl_psk_server_callback);
-#if OPENSSL_VERSION_NUMBER >= 0x10101006L
+#if OPENSSL_VERSION_NUMBER >= 0x10101006L && !defined(LIBRESSL_VERSION_NUMBER)
// Set the client callback for TLSv1.3 PSK
if (mode == QSslSocket::SslClientMode
&& QSslSocket::sslLibraryBuildVersionNumber() >= 0x10101006L) {

View File

@ -1,12 +1,7 @@
Add LibreSSL support
Based on:
https://github.com/gentoo/libressl/blob/master/dev-qt/qtnetwork/files/qtnetwork-5.15.2-libressl.patch
Index: src/network/ssl/qsslsocket_openssl_symbols.cpp
--- src/network/ssl/qsslsocket_openssl_symbols.cpp.orig
+++ src/network/ssl/qsslsocket_openssl_symbols.cpp
@@ -146,26 +146,39 @@ DEFINEFUNC(const BIO_METHOD *, BIO_s_mem, void, DUMMYA
Index: src/plugins/tls/openssl/qsslsocket_openssl_symbols.cpp
--- src/plugins/tls/openssl/qsslsocket_openssl_symbols.cpp.orig
+++ src/plugins/tls/openssl/qsslsocket_openssl_symbols.cpp
@@ -147,23 +147,36 @@ DEFINEFUNC(const BIO_METHOD *, BIO_s_mem, void, DUMMYA
DEFINEFUNC2(int, BN_is_word, BIGNUM *a, a, BN_ULONG w, w, return 0, return)
DEFINEFUNC(int, EVP_CIPHER_CTX_reset, EVP_CIPHER_CTX *c, c, return 0, return)
DEFINEFUNC(int, EVP_PKEY_up_ref, EVP_PKEY *a, a, return 0, return)
@ -15,9 +10,6 @@ Index: src/network/ssl/qsslsocket_openssl_symbols.cpp
DEFINEFUNC(int, EVP_PKEY_param_check, EVP_PKEY_CTX *ctx, ctx, return 0, return)
DEFINEFUNC(void, EVP_PKEY_CTX_free, EVP_PKEY_CTX *ctx, ctx, return, return)
+#endif // OPENSSL_NO_DEPRECATED_3_0
DEFINEFUNC(int, EVP_PKEY_base_id, EVP_PKEY *a, a, return NID_undef, return)
DEFINEFUNC(int, RSA_bits, RSA *a, a, return 0, return)
DEFINEFUNC(int, DSA_bits, DSA *a, a, return 0, return)
+#ifndef LIBRESSL_VERSION_NUMBER
DEFINEFUNC(int, OPENSSL_sk_num, OPENSSL_STACK *a, a, return -1, return)
DEFINEFUNC2(void, OPENSSL_sk_pop_free, OPENSSL_STACK *a, a, void (*b)(void*), b, return, DUMMYARG)
@ -58,7 +50,17 @@ Index: src/network/ssl/qsslsocket_openssl_symbols.cpp
DEFINEFUNC(long, OpenSSL_version_num, void, DUMMYARG, return 0, return)
DEFINEFUNC(const char *, OpenSSL_version, int a, a, return nullptr, return)
DEFINEFUNC(unsigned long, SSL_SESSION_get_ticket_lifetime_hint, const SSL_SESSION *session, session, return 0, return)
@@ -249,7 +266,9 @@ DEFINEFUNC(long, ASN1_INTEGER_get, ASN1_INTEGER *a, a,
@@ -228,7 +245,9 @@ DEFINEFUNC5(int, OCSP_id_get0_info, ASN1_OCTET_STRING
ASN1_OCTET_STRING **piKeyHash, piKeyHash, ASN1_INTEGER **pserial, pserial, OCSP_CERTID *cid, cid,
return 0, return)
DEFINEFUNC2(OCSP_RESPONSE *, OCSP_response_create, int status, status, OCSP_BASICRESP *bs, bs, return nullptr, return)
+#if !defined(LIBRESSL_VERSION_NUMBER) || (LIBRESSL_VERSION_NUMBER >= 0x3050000fL)
DEFINEFUNC(const STACK_OF(X509) *, OCSP_resp_get0_certs, const OCSP_BASICRESP *bs, bs, return nullptr, return)
+#endif
DEFINEFUNC2(int, OCSP_id_cmp, OCSP_CERTID *a, a, OCSP_CERTID *b, b, return -1, return)
DEFINEFUNC7(OCSP_SINGLERESP *, OCSP_basic_add1_status, OCSP_BASICRESP *r, r, OCSP_CERTID *c, c, int s, s,
int re, re, ASN1_TIME *rt, rt, ASN1_TIME *t, t, ASN1_TIME *n, n, return nullptr, return)
@@ -249,7 +268,9 @@ DEFINEFUNC(long, ASN1_INTEGER_get, ASN1_INTEGER *a, a,
DEFINEFUNC2(int, ASN1_INTEGER_cmp, const ASN1_INTEGER *a, a, const ASN1_INTEGER *b, b, return 1, return)
DEFINEFUNC(int, ASN1_STRING_length, ASN1_STRING *a, a, return 0, return)
DEFINEFUNC2(int, ASN1_STRING_to_UTF8, unsigned char **a, a, ASN1_STRING *b, b, return 0, return)
@ -68,8 +70,8 @@ Index: src/network/ssl/qsslsocket_openssl_symbols.cpp
DEFINEFUNC4(long, BIO_ctrl, BIO *a, a, int b, b, long c, c, void *d, d, return -1, return)
DEFINEFUNC(int, BIO_free, BIO *a, a, return 0, return)
DEFINEFUNC2(BIO *, BIO_new_mem_buf, void *a, a, int b, b, return nullptr, return)
@@ -362,12 +381,14 @@ DEFINEFUNC2(int, SSL_CTX_use_PrivateKey, SSL_CTX *a, a
DEFINEFUNC2(int, SSL_CTX_use_RSAPrivateKey, SSL_CTX *a, a, RSA *b, b, return -1, return)
@@ -325,12 +346,14 @@ DEFINEFUNC3(int, SSL_CTX_use_certificate_file, SSL_CTX
DEFINEFUNC2(int, SSL_CTX_use_PrivateKey, SSL_CTX *a, a, EVP_PKEY *b, b, return -1, return)
DEFINEFUNC3(int, SSL_CTX_use_PrivateKey_file, SSL_CTX *a, a, const char *b, b, int c, c, return -1, return)
DEFINEFUNC(X509_STORE *, SSL_CTX_get_cert_store, const SSL_CTX *a, a, return nullptr, return)
+#ifndef LIBRESSL_VERSION_NUMBER
@ -83,40 +85,30 @@ Index: src/network/ssl/qsslsocket_openssl_symbols.cpp
DEFINEFUNC(void, SSL_free, SSL *a, a, return, DUMMYARG)
DEFINEFUNC(STACK_OF(SSL_CIPHER) *, SSL_get_ciphers, const SSL *a, a, return nullptr, return)
DEFINEFUNC(const SSL_CIPHER *, SSL_get_current_cipher, SSL *a, a, return nullptr, return)
@@ -855,17 +876,21 @@ bool q_resolveOpenSslSymbols()
RESOLVEFUNC(ASN1_STRING_get0_data)
@@ -894,9 +917,11 @@ bool q_resolveOpenSslSymbols()
RESOLVEFUNC(EVP_CIPHER_CTX_reset)
RESOLVEFUNC(AUTHORITY_INFO_ACCESS_free)
RESOLVEFUNC(EVP_PKEY_up_ref)
+#ifdef OPENSSL_NO_DEPRECATED_3_0
RESOLVEFUNC(EVP_PKEY_CTX_new)
RESOLVEFUNC(EVP_PKEY_param_check)
RESOLVEFUNC(EVP_PKEY_CTX_free)
+#endif // OPENSSL_NO_DEPRECATED_3_0
RESOLVEFUNC(EVP_PKEY_base_id)
RESOLVEFUNC(RSA_bits)
+#ifndef LIBRESSL_VERSION_NUMBER
RESOLVEFUNC(OPENSSL_sk_new_null)
RESOLVEFUNC(OPENSSL_sk_push)
RESOLVEFUNC(OPENSSL_sk_free)
RESOLVEFUNC(OPENSSL_sk_num)
RESOLVEFUNC(OPENSSL_sk_pop_free)
RESOLVEFUNC(OPENSSL_sk_value)
@@ -990,7 +1015,9 @@ bool q_resolveOpenSslSymbols()
RESOLVEFUNC(OCSP_check_validity)
RESOLVEFUNC(OCSP_cert_to_id)
RESOLVEFUNC(OCSP_id_get0_info)
+#if !defined(LIBRESSL_VERSION_NUMBER) || (LIBRESSL_VERSION_NUMBER >= 0x3050000fL)
RESOLVEFUNC(OCSP_resp_get0_certs)
+#endif
RESOLVEFUNC(DH_get0_pqg)
RESOLVEFUNC(SSL_CTX_set_options)
RESOLVEFUNC(SSL_set_info_callback)
@@ -961,7 +986,9 @@ bool q_resolveOpenSslSymbols()
RESOLVEFUNC(ASN1_INTEGER_cmp)
RESOLVEFUNC(ASN1_STRING_length)
RESOLVEFUNC(ASN1_STRING_to_UTF8)
+#ifndef LIBRESSL_VERSION_NUMBER
RESOLVEFUNC(ASN1_TIME_to_tm)
+#endif
RESOLVEFUNC(BIO_ctrl)
RESOLVEFUNC(BIO_free)
RESOLVEFUNC(BIO_new)
@@ -1072,12 +1099,14 @@ bool q_resolveOpenSslSymbols()
RESOLVEFUNC(SSL_CTX_use_RSAPrivateKey)
RESOLVEFUNC(OCSP_basic_sign)
RESOLVEFUNC(OCSP_response_create)
RESOLVEFUNC(i2d_OCSP_RESPONSE)
@@ -1086,12 +1113,14 @@ bool q_resolveOpenSslSymbols()
RESOLVEFUNC(SSL_CTX_use_PrivateKey)
RESOLVEFUNC(SSL_CTX_use_PrivateKey_file)
RESOLVEFUNC(SSL_CTX_get_cert_store);
+#ifndef LIBRESSL_VERSION_NUMBER
@ -130,32 +122,13 @@ Index: src/network/ssl/qsslsocket_openssl_symbols.cpp
RESOLVEFUNC(SSL_accept)
RESOLVEFUNC(SSL_clear)
RESOLVEFUNC(SSL_connect)
@@ -1223,11 +1252,28 @@ QDateTime q_getTimeFromASN1(const ASN1_TIME *aTime)
QDateTime result;
tm lTime;
@@ -1141,7 +1170,9 @@ bool q_resolveOpenSslSymbols()
RESOLVEFUNC(RSA_free)
+#ifdef LIBRESSL_VERSION_NUMBER
+ const char *data;
+ size_t len;
+ int type;
+
+ data = (const char*)ASN1_STRING_get0_data((const ASN1_STRING *)aTime);
+ len = ASN1_STRING_length(aTime);
+ type = ASN1_STRING_type(aTime);
+
+ if (ASN1_time_parse(data, len, &lTime, type) == type) {
+ QDate resDate(lTime.tm_year + 1900, lTime.tm_mon + 1, lTime.tm_mday);
+ QTime resTime(lTime.tm_hour, lTime.tm_min, lTime.tm_sec);
+ result = QDateTime(resDate, resTime, Qt::UTC);
+ }
+
+#else
if (q_ASN1_TIME_to_tm(aTime, &lTime)) {
QDate resDate(lTime.tm_year + 1900, lTime.tm_mon + 1, lTime.tm_mday);
QTime resTime(lTime.tm_hour, lTime.tm_min, lTime.tm_sec);
result = QDateTime(resDate, resTime, Qt::UTC);
}
RESOLVEFUNC(DH_bits)
+#if !defined(LIBRESSL_VERSION_NUMBER) || (LIBRESSL_VERSION_NUMBER >= 0x3050000fL)
RESOLVEFUNC(DSA_bits)
+#endif
RESOLVEFUNC(RSA_bits)
return result;
}
#ifndef OPENSSL_NO_EC

View File

@ -1,100 +0,0 @@
Add LibreSSL support
Based on:
https://github.com/gentoo/libressl/blob/master/dev-qt/qtnetwork/files/qtnetwork-5.15.2-libressl.patch
Index: src/network/ssl/qsslsocket_openssl_symbols_p.h
--- src/network/ssl/qsslsocket_openssl_symbols_p.h.orig
+++ src/network/ssl/qsslsocket_openssl_symbols_p.h
@@ -80,6 +80,13 @@ QT_BEGIN_NAMESPACE
#define DUMMYARG
+#ifdef LIBRESSL_VERSION_NUMBER
+typedef _STACK STACK;
+typedef STACK OPENSSL_STACK;
+typedef void OPENSSL_INIT_SETTINGS;
+typedef int (*X509_STORE_CTX_verify_cb)(int ok,X509_STORE_CTX *ctx);
+#endif
+
#if !defined QT_LINKED_OPENSSL
// **************** Shared declarations ******************
// ret func(arg)
@@ -233,17 +240,36 @@ Q_AUTOTEST_EXPORT const BIO_METHOD *q_BIO_s_mem();
int q_DSA_bits(DSA *a);
int q_EVP_CIPHER_CTX_reset(EVP_CIPHER_CTX *c);
Q_AUTOTEST_EXPORT int q_EVP_PKEY_up_ref(EVP_PKEY *a);
+#ifdef OPENSSL_NO_DEPRECATED_3_0
EVP_PKEY_CTX *q_EVP_PKEY_CTX_new(EVP_PKEY *pkey, ENGINE *e);
void q_EVP_PKEY_CTX_free(EVP_PKEY_CTX *ctx);
int q_EVP_PKEY_param_check(EVP_PKEY_CTX *ctx);
+#endif // OPENSSL_NO_DEPRECATED_3_0
int q_EVP_PKEY_base_id(EVP_PKEY *a);
int q_RSA_bits(RSA *a);
+
+#ifndef LIBRESSL_VERSION_NUMBER
Q_AUTOTEST_EXPORT int q_OPENSSL_sk_num(OPENSSL_STACK *a);
Q_AUTOTEST_EXPORT void q_OPENSSL_sk_pop_free(OPENSSL_STACK *a, void (*b)(void *));
Q_AUTOTEST_EXPORT OPENSSL_STACK *q_OPENSSL_sk_new_null();
Q_AUTOTEST_EXPORT void q_OPENSSL_sk_push(OPENSSL_STACK *st, void *data);
Q_AUTOTEST_EXPORT void q_OPENSSL_sk_free(OPENSSL_STACK *a);
Q_AUTOTEST_EXPORT void * q_OPENSSL_sk_value(OPENSSL_STACK *a, int b);
+#else // LIBRESSL_VERSION_NUMBER
+int q_sk_num(STACK *a);
+#define q_OPENSSL_sk_num(a) q_sk_num(a)
+void q_sk_pop_free(STACK *a, void (*b)(void *));
+#define q_OPENSSL_sk_pop_free(a, b) q_sk_pop_free(a, b)
+STACK *q_sk_new_null();
+#define q_OPENSSL_sk_new_null() q_sk_new_null()
+void q_sk_push(STACK *st, void *data);
+#define q_OPENSSL_sk_push(st, data) q_sk_push(st, data)
+void q_sk_free(STACK *a);
+#define q_OPENSSL_sk_free q_sk_free
+void *q_sk_value(STACK *a, int b);
+#define q_OPENSSL_sk_value(a, b) q_sk_value(a, b)
+#endif // LIBRESSL_VERSION_NUMBER
+
int q_SSL_session_reused(SSL *a);
unsigned long q_SSL_CTX_set_options(SSL_CTX *ctx, unsigned long op);
int q_OPENSSL_init_ssl(uint64_t opts, const OPENSSL_INIT_SETTINGS *settings);
@@ -269,8 +295,13 @@ int q_DH_bits(DH *dh);
# define q_SSL_load_error_strings() q_OPENSSL_init_ssl(OPENSSL_INIT_LOAD_SSL_STRINGS \
| OPENSSL_INIT_LOAD_CRYPTO_STRINGS, NULL)
+#ifndef LIBRESSL_VERSION_NUMBER
#define q_SKM_sk_num(type, st) ((int (*)(const STACK_OF(type) *))q_OPENSSL_sk_num)(st)
#define q_SKM_sk_value(type, st,i) ((type * (*)(const STACK_OF(type) *, int))q_OPENSSL_sk_value)(st, i)
+#else
+#define q_SKM_sk_num(type, st) ((int (*)(const STACK_OF(type) *))q_sk_num)(st)
+#define q_SKM_sk_value(type, st,i) ((type * (*)(const STACK_OF(type) *, int))q_sk_value)(st, i)
+#endif // LIBRESSL_VERSION_NUMBER
#define q_OPENSSL_add_all_algorithms_conf() q_OPENSSL_init_crypto(OPENSSL_INIT_ADD_ALL_CIPHERS \
| OPENSSL_INIT_ADD_ALL_DIGESTS \
@@ -279,7 +310,11 @@ int q_DH_bits(DH *dh);
| OPENSSL_INIT_ADD_ALL_DIGESTS, NULL)
int q_OPENSSL_init_crypto(uint64_t opts, const OPENSSL_INIT_SETTINGS *settings);
+#ifndef LIBRESSL_VERSION_NUMBER
void q_CRYPTO_free(void *str, const char *file, int line);
+#else
+void q_CRYPTO_free(void *a);
+#endif
long q_OpenSSL_version_num();
const char *q_OpenSSL_version(int type);
@@ -498,12 +533,14 @@ int q_SSL_CTX_use_PrivateKey(SSL_CTX *a, EVP_PKEY *b);
int q_SSL_CTX_use_RSAPrivateKey(SSL_CTX *a, RSA *b);
int q_SSL_CTX_use_PrivateKey_file(SSL_CTX *a, const char *b, int c);
X509_STORE *q_SSL_CTX_get_cert_store(const SSL_CTX *a);
+#ifndef LIBRESSL_VERSION_NUMBER
SSL_CONF_CTX *q_SSL_CONF_CTX_new();
void q_SSL_CONF_CTX_free(SSL_CONF_CTX *a);
void q_SSL_CONF_CTX_set_ssl_ctx(SSL_CONF_CTX *a, SSL_CTX *b);
unsigned int q_SSL_CONF_CTX_set_flags(SSL_CONF_CTX *a, unsigned int b);
int q_SSL_CONF_CTX_finish(SSL_CONF_CTX *a);
int q_SSL_CONF_cmd(SSL_CONF_CTX *a, const char *b, const char *c);
+#endif
void q_SSL_free(SSL *a);
STACK_OF(SSL_CIPHER) *q_SSL_get_ciphers(const SSL *a);
const SSL_CIPHER *q_SSL_get_current_cipher(SSL *a);

View File

@ -1,12 +0,0 @@
Index: src/plugins/platforminputcontexts/platforminputcontexts.pro
--- src/plugins/platforminputcontexts/platforminputcontexts.pro.orig
+++ src/plugins/platforminputcontexts/platforminputcontexts.pro
@@ -5,7 +5,7 @@ qtConfig(xkbcommon) {
SUBDIRS += compose
qtHaveModule(dbus) {
- !macos:!win32:SUBDIRS += ibus
+ !openbsd:!macos:!win32:SUBDIRS += ibus
}
}

View File

@ -0,0 +1,17 @@
Index: src/plugins/tls/openssl/qopenssl_p.h
--- src/plugins/tls/openssl/qopenssl_p.h.orig
+++ src/plugins/tls/openssl/qopenssl_p.h
@@ -106,6 +106,13 @@
QT_BEGIN_NAMESPACE
+#ifndef DTLS_ANY_VERSION
+#define DTLS_ANY_VERSION 0x1FFFF
+#endif
+#ifndef TLS_ANY_VERSION
+#define TLS_ANY_VERSION 0x10000
+#endif
+
struct QSslErrorEntry {
int code = 0;
int depth = 0;

View File

@ -0,0 +1,63 @@
Index: src/plugins/tls/openssl/qsslcontext_openssl.cpp
--- src/plugins/tls/openssl/qsslcontext_openssl.cpp.orig
+++ src/plugins/tls/openssl/qsslcontext_openssl.cpp
@@ -85,9 +85,9 @@ extern "C" int q_verify_cookie_callback(SSL *ssl, cons
}
#endif // dtls
-#ifdef TLS1_3_VERSION
+#if defined(TLS1_3_VERSION) && !defined(LIBRESSL_VERSION_NUMBER)
extern "C" int q_ssl_sess_set_new_cb(SSL *context, SSL_SESSION *session);
-#endif // TLS1_3_VERSION
+#endif // TLS1_3_VERSION && LIBRESSL_VERSION_NUMBE
static inline QString msgErrorSettingBackendConfig(const QString &why)
{
@@ -406,9 +406,11 @@ QT_WARNING_POP
return;
}
+#ifndef LIBRESSL_VERSION_NUMBER
// A nasty hacked OpenSSL using a level that will make our auto-tests fail:
if (q_SSL_CTX_get_security_level(sslContext->ctx) > 1 && *forceSecurityLevel())
q_SSL_CTX_set_security_level(sslContext->ctx, 1);
+#endif // LIBRESSL_VERSION_NUMBER
const long anyVersion =
#if QT_CONFIG(dtls)
@@ -699,14 +701,14 @@ QT_WARNING_POP
q_SSL_CTX_set_verify(sslContext->ctx, verificationMode, verificationCallback);
}
-#ifdef TLS1_3_VERSION
+#if defined(TLS1_3_VERSION) && !defined(LIBRESSL_VERSION_NUMBER)
// NewSessionTicket callback:
if (mode == QSslSocket::SslClientMode && !isDtls) {
q_SSL_CTX_sess_set_new_cb(sslContext->ctx, q_ssl_sess_set_new_cb);
q_SSL_CTX_set_session_cache_mode(sslContext->ctx, SSL_SESS_CACHE_CLIENT);
}
-#endif // TLS1_3_VERSION
+#endif // TLS1_3_VERSION && LIBRESSL_VERSION_NUMBER
#if QT_CONFIG(dtls)
// DTLS cookies:
@@ -794,6 +796,7 @@ void QSslContext::applyBackendConfig(QSslContext *sslC
}
#endif // ocsp
+#ifndef LIBRESSL_VERSION_NUMBER
QSharedPointer<SSL_CONF_CTX> cctx(q_SSL_CONF_CTX_new(), &q_SSL_CONF_CTX_free);
if (cctx) {
q_SSL_CONF_CTX_set_ssl_ctx(cctx.data(), sslContext->ctx);
@@ -840,7 +843,9 @@ void QSslContext::applyBackendConfig(QSslContext *sslC
sslContext->errorStr = msgErrorSettingBackendConfig(QSslSocket::tr("SSL_CONF_finish() failed"));
sslContext->errorCode = QSslError::UnspecifiedError;
}
- } else {
+ } else
+#endif // LIBRESSL_VERSION_NUMBER
+ {
sslContext->errorStr = msgErrorSettingBackendConfig(QSslSocket::tr("SSL_CONF_CTX_new() failed"));
sslContext->errorCode = QSslError::UnspecifiedError;
}

View File

@ -0,0 +1,147 @@
Index: src/plugins/tls/openssl/qsslsocket_openssl_symbols_p.h
--- src/plugins/tls/openssl/qsslsocket_openssl_symbols_p.h.orig
+++ src/plugins/tls/openssl/qsslsocket_openssl_symbols_p.h
@@ -82,6 +82,13 @@ QT_BEGIN_NAMESPACE
#define DUMMYARG
+#ifdef LIBRESSL_VERSION_NUMBER
+typedef _STACK STACK;
+typedef STACK OPENSSL_STACK;
+typedef void OPENSSL_INIT_SETTINGS;
+typedef int (*X509_STORE_CTX_verify_cb)(int ok,X509_STORE_CTX *ctx);
+#endif
+
#if !defined QT_LINKED_OPENSSL
// **************** Shared declarations ******************
// ret func(arg)
@@ -235,15 +242,32 @@ const BIO_METHOD *q_BIO_s_mem();
void q_AUTHORITY_INFO_ACCESS_free(AUTHORITY_INFO_ACCESS *a);
int q_EVP_CIPHER_CTX_reset(EVP_CIPHER_CTX *c);
int q_EVP_PKEY_up_ref(EVP_PKEY *a);
+#ifdef OPENSSL_NO_DEPRECATED_3_0
EVP_PKEY_CTX *q_EVP_PKEY_CTX_new(EVP_PKEY *pkey, ENGINE *e);
void q_EVP_PKEY_CTX_free(EVP_PKEY_CTX *ctx);
+#endif // OPENSSL_NO_DEPRECATED_3_0
int q_EVP_PKEY_param_check(EVP_PKEY_CTX *ctx);
+#ifndef LIBRESSL_VERSION_NUMBER
int q_OPENSSL_sk_num(OPENSSL_STACK *a);
void q_OPENSSL_sk_pop_free(OPENSSL_STACK *a, void (*b)(void *));
OPENSSL_STACK *q_OPENSSL_sk_new_null();
void q_OPENSSL_sk_push(OPENSSL_STACK *st, void *data);
void q_OPENSSL_sk_free(OPENSSL_STACK *a);
void * q_OPENSSL_sk_value(OPENSSL_STACK *a, int b);
+#else // LIBRESSL_VERSION_NUMBER
+int q_sk_num(STACK *a);
+#define q_OPENSSL_sk_num(a) q_sk_num(a)
+void q_sk_pop_free(STACK *a, void (*b)(void *));
+#define q_OPENSSL_sk_pop_free(a, b) q_sk_pop_free(a, b)
+STACK *q_sk_new_null();
+#define q_OPENSSL_sk_new_null() q_sk_new_null()
+void q_sk_push(STACK *st, void *data);
+#define q_OPENSSL_sk_push(st, data) q_sk_push(st, data)
+void q_sk_free(STACK *a);
+#define q_OPENSSL_sk_free q_sk_free
+void * q_sk_value(STACK *a, int b);
+#define q_OPENSSL_sk_value(a, b) q_sk_value(a, b)
+#endif // LIBRESSL_VERSION_NUMBER
int q_SSL_session_reused(SSL *a);
unsigned long q_SSL_CTX_set_options(SSL_CTX *ctx, unsigned long op);
int q_OPENSSL_init_ssl(uint64_t opts, const OPENSSL_INIT_SETTINGS *settings);
@@ -270,9 +294,15 @@ void q_DH_get0_pqg(const DH *dh, const BIGNUM **p, con
# define q_SSL_load_error_strings() q_OPENSSL_init_ssl(OPENSSL_INIT_LOAD_SSL_STRINGS \
| OPENSSL_INIT_LOAD_CRYPTO_STRINGS, NULL)
+#ifndef LIBRESSL_VERSION_NUMBER
#define q_SKM_sk_num(st) q_OPENSSL_sk_num((OPENSSL_STACK *)st)
#define q_SKM_sk_value(type, st,i) (type *)q_OPENSSL_sk_value((OPENSSL_STACK *)st, i)
+#else // LIBRESSL_VERSION_NUMBER
+#define q_SKM_sk_num(type, st) ((int (*)(const STACK_OF(type) *))q_sk_num)(st)
+#define q_SKM_sk_value(type, st,i) ((type * (*)(const STACK_OF(type) *, int))q_sk_value)(st, i)
+#endif // LIBRESSL_VERSION_NUMBER
+
#define q_OPENSSL_add_all_algorithms_conf() q_OPENSSL_init_crypto(OPENSSL_INIT_ADD_ALL_CIPHERS \
| OPENSSL_INIT_ADD_ALL_DIGESTS \
| OPENSSL_INIT_LOAD_CONFIG, NULL)
@@ -457,12 +487,14 @@ int q_SSL_CTX_use_certificate_file(SSL_CTX *a, const c
int q_SSL_CTX_use_PrivateKey(SSL_CTX *a, EVP_PKEY *b);
int q_SSL_CTX_use_PrivateKey_file(SSL_CTX *a, const char *b, int c);
X509_STORE *q_SSL_CTX_get_cert_store(const SSL_CTX *a);
+#ifndef LIBRESSL_VERSION_NUMBER
SSL_CONF_CTX *q_SSL_CONF_CTX_new();
void q_SSL_CONF_CTX_free(SSL_CONF_CTX *a);
void q_SSL_CONF_CTX_set_ssl_ctx(SSL_CONF_CTX *a, SSL_CTX *b);
unsigned int q_SSL_CONF_CTX_set_flags(SSL_CONF_CTX *a, unsigned int b);
int q_SSL_CONF_CTX_finish(SSL_CONF_CTX *a);
int q_SSL_CONF_cmd(SSL_CONF_CTX *a, const char *b, const char *c);
+#endif // LIBRESSL_VERSION_NUMBER
void q_SSL_free(SSL *a);
STACK_OF(SSL_CIPHER) *q_SSL_get_ciphers(const SSL *a);
const SSL_CIPHER *q_SSL_get_current_cipher(SSL *a);
@@ -564,14 +596,26 @@ void q_PKCS12_free(PKCS12 *pkcs12);
#define q_BIO_get_mem_data(b, pp) (int)q_BIO_ctrl(b,BIO_CTRL_INFO,0,(char *)pp)
#define q_BIO_pending(b) (int)q_BIO_ctrl(b,BIO_CTRL_PENDING,0,NULL)
#define q_SSL_CTX_set_mode(ctx,op) q_SSL_CTX_ctrl((ctx),SSL_CTRL_MODE,(op),NULL)
+#ifndef LIBRESSL_VERSION_NUMBER
#define q_sk_GENERAL_NAME_num(st) q_SKM_sk_num((st))
+#else
+#define q_sk_GENERAL_NAME_num(st) q_SKM_sk_num(GENERAL_NAME, (st))
+#endif
#define q_sk_GENERAL_NAME_value(st, i) q_SKM_sk_value(GENERAL_NAME, (st), (i))
void q_GENERAL_NAME_free(GENERAL_NAME *a);
+#ifndef LIBRESSL_VERSION_NUMBER
#define q_sk_X509_num(st) q_SKM_sk_num((st))
+#else
+#define q_sk_X509_num(st) q_SKM_sk_num(X509, (st))
+#endif
#define q_sk_X509_value(st, i) q_SKM_sk_value(X509, (st), (i))
+#ifndef LIBRESSL_VERSION_NUMBER
#define q_sk_SSL_CIPHER_num(st) q_SKM_sk_num((st))
+#else
+#define q_sk_SSL_CIPHER_num(st) q_SKM_sk_num(SSL_CIPHER, (st))
+#endif
#define q_sk_SSL_CIPHER_value(st, i) q_SKM_sk_value(SSL_CIPHER, (st), (i))
#define q_SSL_CTX_add_extra_chain_cert(ctx,x509) \
q_SSL_CTX_ctrl(ctx,SSL_CTRL_EXTRA_CHAIN_CERT,0,(char *)x509)
@@ -673,7 +717,11 @@ int q_OCSP_check_validity(ASN1_GENERALIZEDTIME *thisup
int q_OCSP_id_get0_info(ASN1_OCTET_STRING **piNameHash, ASN1_OBJECT **pmd, ASN1_OCTET_STRING **pikeyHash,
ASN1_INTEGER **pserial, OCSP_CERTID *cid);
+#if defined(LIBRESSL_VERSION_NUMBER) && LIBRESSL_VERSION_NUMBER < 0x3050000fL
+#define q_OCSP_resp_get0_certs(bs) ((bs)->certs)
+#else
const STACK_OF(X509) *q_OCSP_resp_get0_certs(const OCSP_BASICRESP *bs);
+#endif
OCSP_CERTID *q_OCSP_cert_to_id(const EVP_MD *dgst, X509 *subject, X509 *issuer);
void q_OCSP_CERTID_free(OCSP_CERTID *cid);
int q_OCSP_id_cmp(OCSP_CERTID *a, OCSP_CERTID *b);
@@ -692,8 +740,14 @@ int q_OCSP_id_cmp(OCSP_CERTID *a, OCSP_CERTID *b);
void *q_CRYPTO_malloc(size_t num, const char *file, int line);
#define q_OPENSSL_malloc(num) q_CRYPTO_malloc(num, "", 0)
+
+#ifndef LIBRESSL_VERSION_NUMBER
void q_CRYPTO_free(void *str, const char *file, int line);
# define q_OPENSSL_free(addr) q_CRYPTO_free(addr, "", 0)
+#else
+void q_CRYPTO_free(void *a);
+# define q_OPENSSL_free(addr) q_CRYPTO_free(addr)
+#endif
void q_SSL_set_info_callback(SSL *ssl, void (*cb) (const SSL *ssl, int type, int val));
const char *q_SSL_alert_type_string(int value);
@@ -756,7 +810,11 @@ int q_EVP_PKEY_set1_DH(EVP_PKEY *a, DH *b);
int q_DH_bits(DH *dh);
int q_RSA_bits(RSA *a);
+#if defined(LIBRESSL_VERSION_NUMBER) && (LIBRESSL_VERSION_NUMBER < 0x3050000fL)
+#define q_DSA_bits(dsa) q_BN_num_bits((dsa)->p)
+#else
int q_DSA_bits(DSA *a);
+#endif
int q_EVP_PKEY_assign(EVP_PKEY *a, int b, void *r);
int q_EVP_PKEY_cmp(const EVP_PKEY *a, const EVP_PKEY *b);

View File

@ -0,0 +1,19 @@
Index: src/plugins/tls/openssl/qtls_openssl.cpp
--- src/plugins/tls/openssl/qtls_openssl.cpp.orig
+++ src/plugins/tls/openssl/qtls_openssl.cpp
@@ -1472,13 +1472,13 @@ bool TlsCryptographOpenSSL::initSslContext()
else if (mode == QSslSocket::SslServerMode)
q_SSL_set_psk_server_callback(ssl, &q_ssl_psk_server_callback);
-#if OPENSSL_VERSION_NUMBER >= 0x10101006L
+#if OPENSSL_VERSION_NUMBER >= 0x10101006L && !defined(LIBRESSL_VERSION_NUMBER)
// Set the client callback for TLSv1.3 PSK
if (mode == QSslSocket::SslClientMode
&& QSslSocket::sslLibraryBuildVersionNumber() >= 0x10101006L) {
q_SSL_set_psk_use_session_callback(ssl, &q_ssl_psk_use_session_callback);
}
-#endif // openssl version >= 0x10101006L
+#endif // OPENSSL_VERSION_NUMBER >= 0x10101006L && !defined(LIBRESSL_VERSION_NUMBER)
#endif // OPENSSL_NO_PSK

View File

@ -0,0 +1,62 @@
Index: src/plugins/tls/openssl/qx509_openssl.cpp
--- src/plugins/tls/openssl/qx509_openssl.cpp.orig
+++ src/plugins/tls/openssl/qx509_openssl.cpp
@@ -97,7 +97,11 @@ QMultiMap<QByteArray, QString> mapFromX509Name(X509_NA
unsigned char *data = nullptr;
int size = q_ASN1_STRING_to_UTF8(&data, q_X509_NAME_ENTRY_get_data(e));
info.insert(name, QString::fromUtf8((char*)data, size));
- q_CRYPTO_free(data, nullptr, 0);
+#if QT_CONFIG(opensslv11) && !defined(LIBRESSL_VERSION_NUMBER)
+ q_CRYPTO_free(data, nullptr, 0);
+#else
+ q_CRYPTO_free(data);
+#endif
}
return info;
@@ -107,12 +111,27 @@ QDateTime dateTimeFromASN1(const ASN1_TIME *aTime)
{
QDateTime result;
tm lTime;
+#ifdef LIBRESSL_VERSION_NUMBER
+ const char *data;
+ size_t len;
+ int type;
+ data = (const char*)ASN1_STRING_get0_data((const ASN1_STRING *)aTime);
+ len = ASN1_STRING_length(aTime);
+ type = ASN1_STRING_type(aTime);
+
+ if (ASN1_time_parse(data, len, &lTime, type) == type) {
+ QDate resDate(lTime.tm_year + 1900, lTime.tm_mon + 1, lTime.tm_mday);
+ QTime resTime(lTime.tm_hour, lTime.tm_min, lTime.tm_sec);
+ result = QDateTime(resDate, resTime, Qt::UTC);
+ }
+#else
if (q_ASN1_TIME_to_tm(aTime, &lTime)) {
QDate resDate(lTime.tm_year + 1900, lTime.tm_mon + 1, lTime.tm_mday);
QTime resTime(lTime.tm_hour, lTime.tm_min, lTime.tm_sec);
result = QDateTime(resDate, resTime, Qt::UTC);
}
+#endif
return result;
}
@@ -223,7 +242,7 @@ QVariant x509UnknownExtensionToValue(X509_EXTENSION *e
QVariantList list;
bool isMap = false;
- for (int j = 0; j < q_SKM_sk_num(val); j++) {
+ for (int j = 0; j < q_SKM_sk_num(CONF_VALUE, val); j++) {
CONF_VALUE *nval = q_SKM_sk_value(CONF_VALUE, val, j);
if (nval->name && nval->value) {
isMap = true;
@@ -319,7 +338,7 @@ QVariant x509ExtensionToValue(X509_EXTENSION *ext)
if (!info)
return {};
QVariantMap result;
- for (int i=0; i < q_SKM_sk_num(info); i++) {
+ for (int i=0; i < q_SKM_sk_num(ACCESS_DESCRIPTION, info); i++) {
ACCESS_DESCRIPTION *ad = q_SKM_sk_value(ACCESS_DESCRIPTION, info, i);
GENERAL_NAME *name = ad->location;

View File

@ -0,0 +1,12 @@
Index: src/testlib/qtestcase.cpp
--- src/testlib/qtestcase.cpp.orig
+++ src/testlib/qtestcase.cpp
@@ -1708,7 +1708,7 @@ class FatalSignalHandler (public)
__attribute__((section(".lbss.altstack"), aligned(4096)))
# endif
static QVarLengthArray<char, 32 * 1024> alternateStack;
- alternateStack.resize(qMax(SIGSTKSZ, alternateStack.size()));
+ alternateStack.resize(qMax(static_cast<long>(SIGSTKSZ), alternateStack.size()));
stack_t stack;
stack.ss_flags = 0;
stack.ss_size = alternateStack.size();

View File

@ -46,6 +46,7 @@ share/doc/qt6/global/externalsites.qdocconf
share/doc/qt6/global/externalsites/external-resources.qdoc
share/doc/qt6/global/externalsites/qt-webpages.qdoc
share/doc/qt6/global/externalsites/qtcreator.qdoc
share/doc/qt6/global/externalsites/qtdesignstudio.qdoc
share/doc/qt6/global/externalsites/rfc.qdoc
share/doc/qt6/global/fileextensions.qdocconf
share/doc/qt6/global/html-config.qdocconf
@ -56,6 +57,7 @@ share/doc/qt6/global/html-header-online.qdocconf
share/doc/qt6/global/includes/
share/doc/qt6/global/includes-online/
share/doc/qt6/global/includes-online/search.qdoc
share/doc/qt6/global/includes/cli-build-cmake.qdocinc
share/doc/qt6/global/includes/examples-run.qdocinc
share/doc/qt6/global/includes/module-use.qdocinc
share/doc/qt6/global/includes/standardpath/

File diff suppressed because it is too large Load Diff

View File

@ -1,7 +1,6 @@
lib/cmake/Qt6Sql/Qt6QMYSQLDriverPluginAdditionalTargetInfo.cmake
lib/cmake/Qt6Sql/Qt6QMYSQLDriverPluginConfig.cmake
lib/cmake/Qt6Sql/Qt6QMYSQLDriverPluginConfigVersion.cmake
lib/cmake/Qt6Sql/Qt6QMYSQLDriverPluginDependencies.cmake
lib/cmake/Qt6Sql/Qt6QMYSQLDriverPluginTargets${MODCMAKE_BUILD_SUFFIX}
lib/cmake/Qt6Sql/Qt6QMYSQLDriverPluginTargets.cmake
@so lib/qt6/plugins/sqldrivers/libqsqlmysql.so

View File

@ -1,7 +1,6 @@
lib/cmake/Qt6Sql/Qt6QPSQLDriverPluginAdditionalTargetInfo.cmake
lib/cmake/Qt6Sql/Qt6QPSQLDriverPluginConfig.cmake
lib/cmake/Qt6Sql/Qt6QPSQLDriverPluginConfigVersion.cmake
lib/cmake/Qt6Sql/Qt6QPSQLDriverPluginDependencies.cmake
lib/cmake/Qt6Sql/Qt6QPSQLDriverPluginTargets${MODCMAKE_BUILD_SUFFIX}
lib/cmake/Qt6Sql/Qt6QPSQLDriverPluginTargets.cmake
@so lib/qt6/plugins/sqldrivers/libqsqlpsql.so

View File

@ -3,27 +3,42 @@ USE_WXNEEDED = Yes
QT6NAME = QtDeclarative
COMMENT = Qt6 Quick and QML components
REVISION = 2
SHARED_LIBS = Qt6Qml 0.0 # 6.0
SHARED_LIBS += Qt6Quick 0.0 # 6.0
SHARED_LIBS += Qt6QuickParticles 0.0 # 6.0
SHARED_LIBS += Qt6QuickTest 0.0 # 6.0
SHARED_LIBS += Qt6QuickWidgets 0.0 # 6.0
SHARED_LIBS += Qt6QuickShapes 0.0 # 6.0
SHARED_LIBS += Qt6QmlModels 0.0 # 6.0
SHARED_LIBS += Qt6QmlWorkerScript 0.0 # 6.0
SHARED_LIBS = Qt6Qml 0.1 # 6.3
SHARED_LIBS += Qt6Quick 0.1 # 6.3
SHARED_LIBS += Qt6QuickParticles 0.1 # 6.3
SHARED_LIBS += Qt6QuickTest 0.1 # 6.3
SHARED_LIBS += Qt6QuickWidgets 0.1 # 6.3
SHARED_LIBS += Qt6QuickShapes 0.1 # 6.3
SHARED_LIBS += Qt6QmlModels 0.1 # 6.3
SHARED_LIBS += Qt6QmlWorkerScript 0.1 # 6.3
SHARED_LIBS += Qt6LabsAnimation 0.0 # 0.0
SHARED_LIBS += Qt6LabsFolderListModel 0.0 # 0.0
SHARED_LIBS += Qt6LabsQmlModels 0.0 # 0.0
SHARED_LIBS += Qt6LabsSettings 0.0 # 0.0
SHARED_LIBS += Qt6LabsSharedImage 0.0 # 0.0
SHARED_LIBS += Qt6LabsWavefrontMesh 0.0 # 0.0
SHARED_LIBS += Qt6QmlCore 0.0 # 0.0
SHARED_LIBS += Qt6QmlLocalStorage 0.0 # 0.0
SHARED_LIBS += Qt6QmlXmlListModel 0.0 # 0.0
SHARED_LIBS += Qt6QuickControls2 0.0 # 0.0
SHARED_LIBS += Qt6QuickControls2Impl 0.0 # 0.0
SHARED_LIBS += Qt6QuickDialogs2 0.0 # 0.0
SHARED_LIBS += Qt6QuickDialogs2QuickImpl 0.0 # 0.0
SHARED_LIBS += Qt6QuickDialogs2Utils 0.0 # 0.0
SHARED_LIBS += Qt6QuickLayouts 0.0 # 0.0
SHARED_LIBS += Qt6QuickTemplates2 0.0 # 0.0
WANTLIB += ${COMPILER_LIBCXX} GL Qt6Core Qt6Gui Qt6Network Qt6OpenGL
WANTLIB += Qt6Sql Qt6Test Qt6Widgets c m
WANTLIB += Qt6Sql Qt6Test Qt6Widgets c m xkbcommon
MODULES = lang/python
MODPY_RUNDEP = No
MODQT6_DEPS = No
LIB_DEPENDS = x11/qt6/qtbase>=${VERSION},<${NEXT_VERSION}
BUILD_DEPENDS = graphics/vulkan-loader
CONFIGURE_STYLE = cmake
BUILD_DEPENDS = x11/qt6/qtshadertools>=${VERSION},<${NEXT_VERSION} \
x11/qt6/qtlanguageserver>=${VERSION},<${NEXT_VERSION} \
graphics/vulkan-loader
pre-configure:
# Python is used for building, this path does not get into final packages.
ln -sf ${MODPY_BIN} ${WRKDIR}/bin/python

View File

@ -1,2 +1,2 @@
SHA256 (qt/qtdeclarative-everywhere-src-6.0.4.tar.xz) = egrmrXLiuCiyzjuaTn71jIWqap2okqTgn6CRNO7j6XY=
SIZE (qt/qtdeclarative-everywhere-src-6.0.4.tar.xz) = 20834808
SHA256 (qt/qtdeclarative-everywhere-src-6.3.0.tar.xz) = 0pSwKdwrLU9l2lFv3DuAiNMmQ+t/932xNai5zpBMqjc=
SIZE (qt/qtdeclarative-everywhere-src-6.3.0.tar.xz) = 30067416

View File

@ -0,0 +1,13 @@
Disable QML just-in-time compiler
Index: src/qml/configure.cmake
--- src/qml/configure.cmake.orig
+++ src/qml/configure.cmake
@@ -113,7 +113,7 @@ qt_feature("qml-jit" PRIVATE
SECTION "QML"
LABEL "QML just-in-time compiler"
PURPOSE "Provides a JIT for QML and JavaScript"
- AUTODETECT NOT IOS AND NOT TVOS
+ AUTODETECT NOT IOS AND NOT TVOS AND NOT OPENBSD
CONDITION ( ( ( TEST_architecture_arch STREQUAL i386 ) AND TEST_pointer_32bit AND QT_FEATURE_sse2 ) OR ( ( TEST_architecture_arch STREQUAL x86_64 ) AND TEST_pointer_64bit AND QT_FEATURE_sse2 ) OR ( ( TEST_architecture_arch STREQUAL arm ) AND TEST_pointer_32bit AND TEST_arm_fp AND TEST_arm_thumb AND ( LINUX OR IOS OR TVOS OR QNX ) ) OR ( ( TEST_architecture_arch STREQUAL arm64 ) AND TEST_pointer_64bit AND TEST_arm_fp AND ( LINUX OR IOS OR TVOS OR QNX OR INTEGRITY ) ) )
)
# special case begin

File diff suppressed because it is too large Load Diff

View File

@ -1,9 +1,12 @@
QT6NAME = QtQuickTimeline
COMMENT = Qt6 module for keyframe-based timeline construction.
WANTLIB += ${COMPILER_LIBCXX} GL Qt6Core Qt6Gui Qt6Network Qt6OpenGL
WANTLIB += Qt6Qml Qt6QmlModels Qt6Quick c m
SHARED_LIBS += Qt6QuickTimeline 0.0 # 6.3
LIB_DEPENDS = x11/qt6/qtdeclarative>=${VERSION},<${NEXT_VERSION}
WANTLIB += ${COMPILER_LIBCXX} GL Qt6Core Qt6Gui Qt6Network Qt6OpenGL
WANTLIB += Qt6Qml Qt6QmlModels Qt6Quick c m xkbcommon
LIB_DEPENDS = x11/qt6/qtdeclarative>=${VERSION},<${NEXT_VERSION} \
x11/xkbcommon
.include <bsd.port.mk>

View File

@ -1,2 +1,2 @@
SHA256 (qt/qtquicktimeline-everywhere-src-6.0.4.tar.xz) = cBmilnqtD6vct9W3AYmCdPfIftz3sj5Wuv9VYJSiZI4=
SIZE (qt/qtquicktimeline-everywhere-src-6.0.4.tar.xz) = 109256
SHA256 (qt/qtquicktimeline-everywhere-src-6.3.0.tar.xz) = n/CpMRWe/GvlvZ+KHkoWpw4tqzfPIq2FxtMwzP3zHBo=
SIZE (qt/qtquicktimeline-everywhere-src-6.3.0.tar.xz) = 113460

View File

@ -1,10 +1,56 @@
include/X11/qt6/
include/X11/qt6/QtQuickTimeline/
include/X11/qt6/QtQuickTimeline/${VERSION}/
include/X11/qt6/QtQuickTimeline/${VERSION}/QtQuickTimeline/
include/X11/qt6/QtQuickTimeline/${VERSION}/QtQuickTimeline/private/
include/X11/qt6/QtQuickTimeline/${VERSION}/QtQuickTimeline/private/qquickkeyframe_p.h
include/X11/qt6/QtQuickTimeline/${VERSION}/QtQuickTimeline/private/qquickkeyframedatautils_p.h
include/X11/qt6/QtQuickTimeline/${VERSION}/QtQuickTimeline/private/qquicktimeline_p.h
include/X11/qt6/QtQuickTimeline/${VERSION}/QtQuickTimeline/private/qquicktimelineanimation_p.h
include/X11/qt6/QtQuickTimeline/${VERSION}/QtQuickTimeline/private/qtquicktimelineexports_p.h
include/X11/qt6/QtQuickTimeline/${VERSION}/QtQuickTimeline/private/qtquicktimelineglobal_p.h
include/X11/qt6/QtQuickTimeline/QtQuickTimeline
include/X11/qt6/QtQuickTimeline/QtQuickTimelineDepends
include/X11/qt6/QtQuickTimeline/QtQuickTimelineVersion
include/X11/qt6/QtQuickTimeline/qtquicktimelineexports.h
include/X11/qt6/QtQuickTimeline/qtquicktimelineglobal.h
include/X11/qt6/QtQuickTimeline/qtquicktimelineversion.h
lib/cmake/
lib/cmake/Qt6BuildInternals/
lib/cmake/Qt6BuildInternals/StandaloneTests/
lib/cmake/Qt6BuildInternals/StandaloneTests/QtQuickTimelineTestsConfig.cmake
lib/cmake/Qt6Qml/
lib/cmake/Qt6Qml/QmlPlugins/
lib/cmake/Qt6Qml/QmlPlugins/Qt6qtquicktimelinepluginAdditionalTargetInfo.cmake
lib/cmake/Qt6Qml/QmlPlugins/Qt6qtquicktimelinepluginConfig.cmake
lib/cmake/Qt6Qml/QmlPlugins/Qt6qtquicktimelinepluginConfigVersion.cmake
lib/cmake/Qt6Qml/QmlPlugins/Qt6qtquicktimelinepluginDependencies.cmake
lib/cmake/Qt6Qml/QmlPlugins/Qt6qtquicktimelinepluginConfigVersionImpl.cmake
lib/cmake/Qt6Qml/QmlPlugins/Qt6qtquicktimelinepluginTargets${MODCMAKE_BUILD_SUFFIX}
lib/cmake/Qt6Qml/QmlPlugins/Qt6qtquicktimelinepluginTargets.cmake
lib/cmake/Qt6QuickTimeline/
lib/cmake/Qt6QuickTimeline/Qt6QuickTimelineAdditionalTargetInfo.cmake
lib/cmake/Qt6QuickTimeline/Qt6QuickTimelineConfig.cmake
lib/cmake/Qt6QuickTimeline/Qt6QuickTimelineConfigVersion.cmake
lib/cmake/Qt6QuickTimeline/Qt6QuickTimelineConfigVersionImpl.cmake
lib/cmake/Qt6QuickTimeline/Qt6QuickTimelineDependencies.cmake
lib/cmake/Qt6QuickTimeline/Qt6QuickTimelineTargets${MODCMAKE_BUILD_SUFFIX}
lib/cmake/Qt6QuickTimeline/Qt6QuickTimelineTargets.cmake
lib/cmake/Qt6QuickTimeline/Qt6QuickTimelineVersionlessTargets.cmake
lib/libQt6QuickTimeline.prl
@lib lib/libQt6QuickTimeline.so.${LIBQt6QuickTimeline_VERSION}
lib/metatypes/
lib/metatypes/qt6quicktimeline_release_metatypes.json
lib/qt6/
lib/qt6/mkspecs/
lib/qt6/mkspecs/modules/
lib/qt6/mkspecs/modules/qt_lib_quicktimeline.pri
lib/qt6/mkspecs/modules/qt_lib_quicktimeline_private.pri
lib/qt6/qml/
lib/qt6/qml/QtQuick/
lib/qt6/qml/QtQuick/Timeline/
@so lib/qt6/qml/QtQuick/Timeline/libqtquicktimelineplugin.so
lib/qt6/qml/QtQuick/Timeline/plugins.qmltypes
lib/qt6/qml/QtQuick/Timeline/qmldir
share/qt6/
share/qt6/modules/
share/qt6/modules/QuickTimeline.json

View File

@ -4,6 +4,10 @@ COMMENT = Qt6 shader tools module
SHARED_LIBS = Qt6ShaderTools 0.0 # 6.0
WANTLIB += ${COMPILER_LIBCXX} GL Qt6Core Qt6Gui c m
WANTLIB += ${COMPILER_LIBCXX} GL Qt6Core Qt6Gui c m xkbcommon
BUILD_DEPENDS = graphics/vulkan-loader
LIB_DEPENDS = x11/xkbcommon
.include <bsd.port.mk>

View File

@ -1,2 +1,2 @@
SHA256 (qt/qtshadertools-everywhere-src-6.0.4.tar.xz) = BbiPk8Y0hZng/lEqYVuqNSelZOxwOuYK2dgkvhhGj3c=
SIZE (qt/qtshadertools-everywhere-src-6.0.4.tar.xz) = 904928
SHA256 (qt/qtshadertools-everywhere-src-6.3.0.tar.xz) = VJiVm503wlS9EmqxMgz4auuKMbPqflHbZmqPlpivvWw=
SIZE (qt/qtshadertools-everywhere-src-6.3.0.tar.xz) = 998180

View File

@ -7,10 +7,12 @@ include/X11/qt6/QtShaderTools/${VERSION}/QtShaderTools/private/qshaderbatchabler
include/X11/qt6/QtShaderTools/${VERSION}/QtShaderTools/private/qspirvcompiler_p.h
include/X11/qt6/QtShaderTools/${VERSION}/QtShaderTools/private/qspirvshader_p.h
include/X11/qt6/QtShaderTools/${VERSION}/QtShaderTools/private/qspirvshaderremap_p.h
include/X11/qt6/QtShaderTools/${VERSION}/QtShaderTools/private/qtshadertoolsexports_p.h
include/X11/qt6/QtShaderTools/${VERSION}/QtShaderTools/private/qtshadertoolsglobal_p.h
include/X11/qt6/QtShaderTools/QtShaderTools
include/X11/qt6/QtShaderTools/QtShaderToolsDepends
include/X11/qt6/QtShaderTools/QtShaderToolsVersion
include/X11/qt6/QtShaderTools/qtshadertoolsexports.h
include/X11/qt6/QtShaderTools/qtshadertoolsglobal.h
include/X11/qt6/QtShaderTools/qtshadertoolsversion.h
lib/cmake/Qt6BuildInternals/StandaloneTests/QtShaderToolsTestsConfig.cmake
@ -18,21 +20,24 @@ lib/cmake/Qt6ShaderTools/
lib/cmake/Qt6ShaderTools/Qt6ShaderToolsAdditionalTargetInfo.cmake
lib/cmake/Qt6ShaderTools/Qt6ShaderToolsConfig.cmake
lib/cmake/Qt6ShaderTools/Qt6ShaderToolsConfigVersion.cmake
lib/cmake/Qt6ShaderTools/Qt6ShaderToolsConfigVersionImpl.cmake
lib/cmake/Qt6ShaderTools/Qt6ShaderToolsDependencies.cmake
lib/cmake/Qt6ShaderTools/Qt6ShaderToolsMacros.cmake
lib/cmake/Qt6ShaderTools/Qt6ShaderToolsTargets${MODCMAKE_BUILD_SUFFIX}
lib/cmake/Qt6ShaderTools/Qt6ShaderToolsTargets.cmake
lib/cmake/Qt6ShaderTools/Qt6ShaderToolsVersionlessTargets.cmake
lib/cmake/Qt6ShaderToolsTools/
lib/cmake/Qt6ShaderToolsTools/Qt6ShaderToolsMacros.cmake
lib/cmake/Qt6ShaderToolsTools/Qt6ShaderToolsToolsAdditionalTargetInfo.cmake
lib/cmake/Qt6ShaderToolsTools/Qt6ShaderToolsToolsConfig.cmake
lib/cmake/Qt6ShaderToolsTools/Qt6ShaderToolsToolsConfigVersion.cmake
lib/cmake/Qt6ShaderToolsTools/Qt6ShaderToolsToolsConfigVersionImpl.cmake
lib/cmake/Qt6ShaderToolsTools/Qt6ShaderToolsToolsDependencies.cmake
lib/cmake/Qt6ShaderToolsTools/Qt6ShaderToolsToolsTargets${MODCMAKE_BUILD_SUFFIX}
lib/cmake/Qt6ShaderToolsTools/Qt6ShaderToolsToolsTargets.cmake
lib/cmake/Qt6ShaderToolsTools/Qt6ShaderToolsToolsVersionlessTargets.cmake
lib/libQt6ShaderTools.prl
@lib lib/libQt6ShaderTools.so.${LIBQt6ShaderTools_VERSION}
lib/metatypes/qt6shadertools_release_metatypes.json
@bin lib/qt6/bin/qsb
lib/qt6/mkspecs/modules/qt_lib_shadertools.pri
lib/qt6/mkspecs/modules/qt_lib_shadertools_private.pri

View File

@ -1,12 +1,13 @@
QT6NAME = QtSVG
COMMENT = SVG support for Qt6
SHARED_LIBS += Qt6Svg 0.0 # 6.0
SHARED_LIBS += Qt6SvgWidgets 0.0 # 6.0
SHARED_LIBS += Qt6Svg 0.1 # 6.3
SHARED_LIBS += Qt6SvgWidgets 0.1 # 6.3
WANTLIB += ${COMPILER_LIBCXX} GL Qt6Core Qt6Gui Qt6Widgets c m
WANTLIB += z
WANTLIB += xkbcommon z
LIB_DEPENDS = x11/xkbcommon
BUILD_DEPENDS = graphics/vulkan-loader
.include <bsd.port.mk>

View File

@ -1,2 +1,2 @@
SHA256 (qt/qtsvg-everywhere-src-6.0.4.tar.xz) = mG1Zk0NvNFPaZwlcw6fOtiFocMdTw278oSMDA6xBjmE=
SIZE (qt/qtsvg-everywhere-src-6.0.4.tar.xz) = 1653336
SHA256 (qt/qtsvg-everywhere-src-6.3.0.tar.xz) = MWRQTX4/ZAQ5MII1c5sRJgWrX8nMUXygso+fuTqNsOM=
SIZE (qt/qtsvg-everywhere-src-6.3.0.tar.xz) = 1727216

View File

@ -1,3 +1,4 @@
include/X11/qt6/
include/X11/qt6/QtSvg/
include/X11/qt6/QtSvg/${VERSION}/
include/X11/qt6/QtSvg/${VERSION}/QtSvg/
@ -9,6 +10,7 @@ include/X11/qt6/QtSvg/${VERSION}/QtSvg/private/qsvgnode_p.h
include/X11/qt6/QtSvg/${VERSION}/QtSvg/private/qsvgstructure_p.h
include/X11/qt6/QtSvg/${VERSION}/QtSvg/private/qsvgstyle_p.h
include/X11/qt6/QtSvg/${VERSION}/QtSvg/private/qsvgtinydocument_p.h
include/X11/qt6/QtSvg/${VERSION}/QtSvg/private/qtsvgexports_p.h
include/X11/qt6/QtSvg/${VERSION}/QtSvg/private/qtsvgglobal_p.h
include/X11/qt6/QtSvg/QSvgGenerator
include/X11/qt6/QtSvg/QSvgRenderer
@ -17,6 +19,7 @@ include/X11/qt6/QtSvg/QtSvgDepends
include/X11/qt6/QtSvg/QtSvgVersion
include/X11/qt6/QtSvg/qsvggenerator.h
include/X11/qt6/QtSvg/qsvgrenderer.h
include/X11/qt6/QtSvg/qtsvgexports.h
include/X11/qt6/QtSvg/qtsvgglobal.h
include/X11/qt6/QtSvg/qtsvgversion.h
include/X11/qt6/QtSvgWidgets/
@ -27,25 +30,31 @@ include/X11/qt6/QtSvgWidgets/QtSvgWidgetsDepends
include/X11/qt6/QtSvgWidgets/QtSvgWidgetsVersion
include/X11/qt6/QtSvgWidgets/qgraphicssvgitem.h
include/X11/qt6/QtSvgWidgets/qsvgwidget.h
include/X11/qt6/QtSvgWidgets/qtsvgwidgetsexports.h
include/X11/qt6/QtSvgWidgets/qtsvgwidgetsglobal.h
include/X11/qt6/QtSvgWidgets/qtsvgwidgetsversion.h
lib/cmake/
lib/cmake/Qt6BuildInternals/
lib/cmake/Qt6BuildInternals/StandaloneTests/
lib/cmake/Qt6BuildInternals/StandaloneTests/QtSvgTestsConfig.cmake
lib/cmake/Qt6Gui/
lib/cmake/Qt6Gui/Qt6QSvgIconPluginAdditionalTargetInfo.cmake
lib/cmake/Qt6Gui/Qt6QSvgIconPluginConfig.cmake
lib/cmake/Qt6Gui/Qt6QSvgIconPluginConfigVersion.cmake
lib/cmake/Qt6Gui/Qt6QSvgIconPluginDependencies.cmake
lib/cmake/Qt6Gui/Qt6QSvgIconPluginConfigVersionImpl.cmake
lib/cmake/Qt6Gui/Qt6QSvgIconPluginTargets${MODCMAKE_BUILD_SUFFIX}
lib/cmake/Qt6Gui/Qt6QSvgIconPluginTargets.cmake
lib/cmake/Qt6Gui/Qt6QSvgPluginAdditionalTargetInfo.cmake
lib/cmake/Qt6Gui/Qt6QSvgPluginConfig.cmake
lib/cmake/Qt6Gui/Qt6QSvgPluginConfigVersion.cmake
lib/cmake/Qt6Gui/Qt6QSvgPluginDependencies.cmake
lib/cmake/Qt6Gui/Qt6QSvgPluginConfigVersionImpl.cmake
lib/cmake/Qt6Gui/Qt6QSvgPluginTargets${MODCMAKE_BUILD_SUFFIX}
lib/cmake/Qt6Gui/Qt6QSvgPluginTargets.cmake
lib/cmake/Qt6Svg/
lib/cmake/Qt6Svg/Qt6SvgAdditionalTargetInfo.cmake
lib/cmake/Qt6Svg/Qt6SvgConfig.cmake
lib/cmake/Qt6Svg/Qt6SvgConfigVersion.cmake
lib/cmake/Qt6Svg/Qt6SvgConfigVersionImpl.cmake
lib/cmake/Qt6Svg/Qt6SvgDependencies.cmake
lib/cmake/Qt6Svg/Qt6SvgTargets${MODCMAKE_BUILD_SUFFIX}
lib/cmake/Qt6Svg/Qt6SvgTargets.cmake
@ -54,6 +63,7 @@ lib/cmake/Qt6SvgWidgets/
lib/cmake/Qt6SvgWidgets/Qt6SvgWidgetsAdditionalTargetInfo.cmake
lib/cmake/Qt6SvgWidgets/Qt6SvgWidgetsConfig.cmake
lib/cmake/Qt6SvgWidgets/Qt6SvgWidgetsConfigVersion.cmake
lib/cmake/Qt6SvgWidgets/Qt6SvgWidgetsConfigVersionImpl.cmake
lib/cmake/Qt6SvgWidgets/Qt6SvgWidgetsDependencies.cmake
lib/cmake/Qt6SvgWidgets/Qt6SvgWidgetsTargets${MODCMAKE_BUILD_SUFFIX}
lib/cmake/Qt6SvgWidgets/Qt6SvgWidgetsTargets.cmake
@ -62,12 +72,22 @@ lib/libQt6Svg.prl
@lib lib/libQt6Svg.so.${LIBQt6Svg_VERSION}
lib/libQt6SvgWidgets.prl
@lib lib/libQt6SvgWidgets.so.${LIBQt6SvgWidgets_VERSION}
lib/metatypes/
lib/metatypes/qt6svg_release_metatypes.json
lib/metatypes/qt6svgwidgets_release_metatypes.json
lib/qt6/
lib/qt6/mkspecs/
lib/qt6/mkspecs/modules/
lib/qt6/mkspecs/modules/qt_lib_svg.pri
lib/qt6/mkspecs/modules/qt_lib_svg_private.pri
lib/qt6/mkspecs/modules/qt_lib_svgwidgets.pri
lib/qt6/mkspecs/modules/qt_lib_svgwidgets_private.pri
lib/qt6/plugins/
lib/qt6/plugins/iconengines/
@so lib/qt6/plugins/iconengines/libqsvgicon.so
lib/qt6/plugins/imageformats/
@so lib/qt6/plugins/imageformats/libqsvg.so
share/qt6/
share/qt6/modules/
share/qt6/modules/Svg.json
share/qt6/modules/SvgWidgets.json

View File

@ -1,7 +1,6 @@
QT6NAME = QtTools
COMMENT = Qt6 development tools
REVISION = 0
SHARED_LIBS += Qt6Designer 0.0 # 6.0
SHARED_LIBS += Qt6DesignerComponents 0.0 # 6.0
@ -11,13 +10,10 @@ SHARED_LIBS += Qt6UiTools 0.0 # 6.0
WANTLIB += ${COMPILER_LIBCXX} GL Qt6Core Qt6DBus Qt6Gui Qt6Network
WANTLIB += Qt6OpenGL Qt6OpenGLWidgets Qt6PrintSupport Qt6Qml Qt6QmlModels
WANTLIB += Qt6Quick Qt6QuickWidgets Qt6Sql Qt6Widgets Qt6Xml c
WANTLIB += clang clang-cpp m
WANTLIB += clang clang-cpp m xkbcommon
# avoid BDEP on ourselves
MODQT6_DEPS = No
LIB_DEPENDS = x11/qt6/qtbase>=${VERSION},<${NEXT_VERSION} \
x11/qt6/qtdeclarative>=${VERSION},<${NEXT_VERSION} \
LIB_DEPENDS = x11/qt6/qtdeclarative>=${VERSION},<${NEXT_VERSION} \
x11/xkbcommon \
devel/llvm
BUILD_DEPENDS = graphics/vulkan-loader

View File

@ -1,2 +1,2 @@
SHA256 (qt/qttools-everywhere-src-6.0.4.tar.xz) = k19BExoFRA1p4koUq10SFtq47c/kgUCGFwV1XUlkjjA=
SIZE (qt/qttools-everywhere-src-6.0.4.tar.xz) = 8388008
SHA256 (qt/qttools-everywhere-src-6.3.0.tar.xz) = /OlGiOqSV4Kih5NHWEmR+FRjDarbpsUq7W2T4zzQsZw=
SIZE (qt/qttools-everywhere-src-6.3.0.tar.xz) = 8625544

View File

@ -1,12 +0,0 @@
Force using qtextbrowser: no W^X violations and no
circular dependencies.
Index: src/assistant/assistant/assistant.pro
--- src/assistant/assistant/assistant.pro.orig
+++ src/assistant/assistant/assistant.pro
@@ -1,4 +1,4 @@
-qtHaveModule(webkitwidgets):!contains(QT_CONFIG, static) {
+qtHaveModule(webkitwidgets):!contains(QT_CONFIG, static):!openbsd {
BROWSER = qtwebkit
} else {
BROWSER = qtextbrowser

View File

@ -7,7 +7,6 @@ bin/pixeltool-qt6
bin/qdbus-qt6
bin/qdoc-qt6
bin/qtdiag-qt6
include/X11/qt6/
include/X11/qt6/QtDesigner/
include/X11/qt6/QtDesigner/${VERSION}/
include/X11/qt6/QtDesigner/${VERSION}/QtDesigner/
@ -273,14 +272,13 @@ include/X11/qt6/QtUiTools/QtUiToolsVersion
include/X11/qt6/QtUiTools/qtuitoolsglobal.h
include/X11/qt6/QtUiTools/qtuitoolsversion.h
include/X11/qt6/QtUiTools/quiloader.h
lib/cmake/
lib/cmake/Qt6BuildInternals/
lib/cmake/Qt6BuildInternals/StandaloneTests/
lib/cmake/Qt6/FindWrapLibClang.cmake
lib/cmake/Qt6BuildInternals/StandaloneTests/QtToolsTestsConfig.cmake
lib/cmake/Qt6Designer/
lib/cmake/Qt6Designer/Qt6DesignerAdditionalTargetInfo.cmake
lib/cmake/Qt6Designer/Qt6DesignerConfig.cmake
lib/cmake/Qt6Designer/Qt6DesignerConfigVersion.cmake
lib/cmake/Qt6Designer/Qt6DesignerConfigVersionImpl.cmake
lib/cmake/Qt6Designer/Qt6DesignerDependencies.cmake
lib/cmake/Qt6Designer/Qt6DesignerTargets${MODCMAKE_BUILD_SUFFIX}
lib/cmake/Qt6Designer/Qt6DesignerTargets.cmake
@ -288,21 +286,23 @@ lib/cmake/Qt6Designer/Qt6DesignerVersionlessTargets.cmake
lib/cmake/Qt6Designer/Qt6QQuickWidgetPluginAdditionalTargetInfo.cmake
lib/cmake/Qt6Designer/Qt6QQuickWidgetPluginConfig.cmake
lib/cmake/Qt6Designer/Qt6QQuickWidgetPluginConfigVersion.cmake
lib/cmake/Qt6Designer/Qt6QQuickWidgetPluginDependencies.cmake
lib/cmake/Qt6Designer/Qt6QQuickWidgetPluginConfigVersionImpl.cmake
lib/cmake/Qt6Designer/Qt6QQuickWidgetPluginTargets${MODCMAKE_BUILD_SUFFIX}
lib/cmake/Qt6Designer/Qt6QQuickWidgetPluginTargets.cmake
lib/cmake/Qt6DesignerComponents/
lib/cmake/Qt6DesignerComponents/Qt6DesignerComponentsAdditionalTargetInfo.cmake
lib/cmake/Qt6DesignerComponents/Qt6DesignerComponentsConfig.cmake
lib/cmake/Qt6DesignerComponents/Qt6DesignerComponentsConfigVersion.cmake
lib/cmake/Qt6DesignerComponents/Qt6DesignerComponentsDependencies.cmake
lib/cmake/Qt6DesignerComponents/Qt6DesignerComponentsTargets${MODCMAKE_BUILD_SUFFIX}
lib/cmake/Qt6DesignerComponents/Qt6DesignerComponentsTargets.cmake
lib/cmake/Qt6DesignerComponents/Qt6DesignerComponentsVersionlessTargets.cmake
lib/cmake/Qt6DesignerComponentsPrivate/
lib/cmake/Qt6DesignerComponentsPrivate/Qt6DesignerComponentsPrivateAdditionalTargetInfo.cmake
lib/cmake/Qt6DesignerComponentsPrivate/Qt6DesignerComponentsPrivateConfig.cmake
lib/cmake/Qt6DesignerComponentsPrivate/Qt6DesignerComponentsPrivateConfigVersion.cmake
lib/cmake/Qt6DesignerComponentsPrivate/Qt6DesignerComponentsPrivateConfigVersionImpl.cmake
lib/cmake/Qt6DesignerComponentsPrivate/Qt6DesignerComponentsPrivateDependencies.cmake
lib/cmake/Qt6DesignerComponentsPrivate/Qt6DesignerComponentsPrivateTargets${MODCMAKE_BUILD_SUFFIX}
lib/cmake/Qt6DesignerComponentsPrivate/Qt6DesignerComponentsPrivateTargets.cmake
lib/cmake/Qt6DesignerComponentsPrivate/Qt6DesignerComponentsPrivateVersionlessTargets.cmake
lib/cmake/Qt6Help/
lib/cmake/Qt6Help/Qt6HelpAdditionalTargetInfo.cmake
lib/cmake/Qt6Help/Qt6HelpConfig.cmake
lib/cmake/Qt6Help/Qt6HelpConfigVersion.cmake
lib/cmake/Qt6Help/Qt6HelpConfigVersionImpl.cmake
lib/cmake/Qt6Help/Qt6HelpDependencies.cmake
lib/cmake/Qt6Help/Qt6HelpTargets${MODCMAKE_BUILD_SUFFIX}
lib/cmake/Qt6Help/Qt6HelpTargets.cmake
@ -311,13 +311,16 @@ lib/cmake/Qt6Linguist/
lib/cmake/Qt6Linguist/Qt6LinguistAdditionalTargetInfo.cmake
lib/cmake/Qt6Linguist/Qt6LinguistConfig.cmake
lib/cmake/Qt6Linguist/Qt6LinguistConfigVersion.cmake
lib/cmake/Qt6Linguist/Qt6LinguistConfigVersionImpl.cmake
lib/cmake/Qt6Linguist/Qt6LinguistDependencies.cmake
lib/cmake/Qt6Linguist/Qt6LinguistTargets.cmake
lib/cmake/Qt6Linguist/Qt6LinguistVersionlessTargets.cmake
lib/cmake/Qt6LinguistTools/
lib/cmake/Qt6LinguistTools/GenerateLUpdateProject.cmake
lib/cmake/Qt6LinguistTools/Qt6LinguistToolsAdditionalTargetInfo.cmake
lib/cmake/Qt6LinguistTools/Qt6LinguistToolsConfig.cmake
lib/cmake/Qt6LinguistTools/Qt6LinguistToolsConfigVersion.cmake
lib/cmake/Qt6LinguistTools/Qt6LinguistToolsConfigVersionImpl.cmake
lib/cmake/Qt6LinguistTools/Qt6LinguistToolsDependencies.cmake
lib/cmake/Qt6LinguistTools/Qt6LinguistToolsMacros.cmake
lib/cmake/Qt6LinguistTools/Qt6LinguistToolsTargets${MODCMAKE_BUILD_SUFFIX}
@ -327,6 +330,7 @@ lib/cmake/Qt6Tools/
lib/cmake/Qt6Tools/Qt6ToolsAdditionalTargetInfo.cmake
lib/cmake/Qt6Tools/Qt6ToolsConfig.cmake
lib/cmake/Qt6Tools/Qt6ToolsConfigVersion.cmake
lib/cmake/Qt6Tools/Qt6ToolsConfigVersionImpl.cmake
lib/cmake/Qt6Tools/Qt6ToolsDependencies.cmake
lib/cmake/Qt6Tools/Qt6ToolsTargets.cmake
lib/cmake/Qt6Tools/Qt6ToolsVersionlessTargets.cmake
@ -334,6 +338,7 @@ lib/cmake/Qt6ToolsTools/
lib/cmake/Qt6ToolsTools/Qt6ToolsToolsAdditionalTargetInfo.cmake
lib/cmake/Qt6ToolsTools/Qt6ToolsToolsConfig.cmake
lib/cmake/Qt6ToolsTools/Qt6ToolsToolsConfigVersion.cmake
lib/cmake/Qt6ToolsTools/Qt6ToolsToolsConfigVersionImpl.cmake
lib/cmake/Qt6ToolsTools/Qt6ToolsToolsDependencies.cmake
lib/cmake/Qt6ToolsTools/Qt6ToolsToolsTargets${MODCMAKE_BUILD_SUFFIX}
lib/cmake/Qt6ToolsTools/Qt6ToolsToolsTargets.cmake
@ -342,6 +347,7 @@ lib/cmake/Qt6UiPlugin/
lib/cmake/Qt6UiPlugin/Qt6UiPluginAdditionalTargetInfo.cmake
lib/cmake/Qt6UiPlugin/Qt6UiPluginConfig.cmake
lib/cmake/Qt6UiPlugin/Qt6UiPluginConfigVersion.cmake
lib/cmake/Qt6UiPlugin/Qt6UiPluginConfigVersionImpl.cmake
lib/cmake/Qt6UiPlugin/Qt6UiPluginDependencies.cmake
lib/cmake/Qt6UiPlugin/Qt6UiPluginTargets.cmake
lib/cmake/Qt6UiPlugin/Qt6UiPluginVersionlessTargets.cmake
@ -349,6 +355,7 @@ lib/cmake/Qt6UiTools/
lib/cmake/Qt6UiTools/Qt6UiToolsAdditionalTargetInfo.cmake
lib/cmake/Qt6UiTools/Qt6UiToolsConfig.cmake
lib/cmake/Qt6UiTools/Qt6UiToolsConfigVersion.cmake
lib/cmake/Qt6UiTools/Qt6UiToolsConfigVersionImpl.cmake
lib/cmake/Qt6UiTools/Qt6UiToolsDependencies.cmake
lib/cmake/Qt6UiTools/Qt6UiToolsTargets${MODCMAKE_BUILD_SUFFIX}
lib/cmake/Qt6UiTools/Qt6UiToolsTargets.cmake
@ -361,29 +368,29 @@ lib/libQt6Help.prl
@lib lib/libQt6Help.so.${LIBQt6Help_VERSION}
lib/libQt6UiTools.prl
@lib lib/libQt6UiTools.so.${LIBQt6UiTools_VERSION}
lib/qt6/
lib/qt6/bin/
lib/metatypes/qt6designer_release_metatypes.json
lib/metatypes/qt6designercomponentsprivate_release_metatypes.json
lib/metatypes/qt6help_release_metatypes.json
lib/metatypes/qt6uitools_release_metatypes.json
@bin lib/qt6/bin/assistant
@bin lib/qt6/bin/designer
@bin lib/qt6/bin/lconvert
@bin lib/qt6/bin/linguist
@bin lib/qt6/bin/lprodump
@bin lib/qt6/bin/lrelease
@bin lib/qt6/bin/lrelease-pro
@bin lib/qt6/bin/lupdate
@bin lib/qt6/bin/lupdate-pro
@bin lib/qt6/bin/pixeltool
@bin lib/qt6/bin/qdbus
@bin lib/qt6/bin/qdbusviewer
@bin lib/qt6/bin/qdistancefieldgenerator
@bin lib/qt6/bin/qdoc
@bin lib/qt6/bin/qhelpgenerator
@bin lib/qt6/bin/qtattributionsscanner
@bin lib/qt6/bin/qtdiag
@bin lib/qt6/bin/qtpaths
@bin lib/qt6/bin/qtdiag6
@bin lib/qt6/bin/qtplugininfo
lib/qt6/mkspecs/
lib/qt6/mkspecs/modules/
@bin lib/qt6/libexec/lprodump
@bin lib/qt6/libexec/lrelease-pro
@bin lib/qt6/libexec/lupdate-pro
@bin lib/qt6/libexec/qhelpgenerator
@bin lib/qt6/libexec/qtattributionsscanner
lib/qt6/mkspecs/modules/qt_lib_designer.pri
lib/qt6/mkspecs/modules/qt_lib_designer_private.pri
lib/qt6/mkspecs/modules/qt_lib_designercomponents_private.pri
@ -395,13 +402,10 @@ lib/qt6/mkspecs/modules/qt_lib_tools_private.pri
lib/qt6/mkspecs/modules/qt_lib_uiplugin.pri
lib/qt6/mkspecs/modules/qt_lib_uitools.pri
lib/qt6/mkspecs/modules/qt_lib_uitools_private.pri
lib/qt6/plugins/
lib/qt6/plugins/designer/
@so lib/qt6/plugins/designer/libqquickwidget.so
share/qt6/
share/qt6/modules/
share/qt6/modules/Designer.json
share/qt6/modules/DesignerComponents.json
share/qt6/modules/DesignerComponentsPrivate.json
share/qt6/modules/Help.json
share/qt6/modules/Linguist.json
share/qt6/modules/Tools.json