On Sat, Sep 23, 2023 at 09:00:25PM +0200, Rafael Sadowski wrote:
> I see no shortcut to fix "libQt5Pdf.so.1.0: undefined symbol
> FPDF_InitLibrary". Yes, linking explicitly against libQt5WebEngineCore
> could fix the issue but it's not so easy to fix it in qmake/re2 for me.
> 
> I would suggest to disable Qt5Pdf support for now. Nothing use it
> directly, maybe via plugin.

grep shows x11/qt5/qt5.port.mk handling Qt5Pdf{,Widgets} for cmake setup;
no mention in ports WANTLIB looks like, but I can't tell if that is enough.

So would neochat need a rebuild or is this something decided at runtime?

> 
> Objections?
> 
> 
> Index: Makefile
> ===================================================================
> RCS file: /cvs/ports/x11/qt5/qtwebengine/Makefile,v
> retrieving revision 1.45
> diff -u -p -u -p -r1.45 Makefile
> --- Makefile  16 Sep 2023 09:01:40 -0000      1.45
> +++ Makefile  23 Sep 2023 18:48:47 -0000
> @@ -15,15 +15,18 @@ COMMENT =         Chromium-based web engine for
>  # Many parts are copied from www/chromium port, so keep in sync
>  DISTNAME =           
> qtwebengine-everywhere-opensource-src-${QT5_WEBENGINE_VERSION}
>  QT5NAME =            QtWebEngine
> -REVISION =           4
> +REVISION =           5
>  
>  CATEGORIES =         www
>  
>  SHARED_LIBS +=  Qt5WebEngine              2.0 # 5.15
>  SHARED_LIBS +=  Qt5WebEngineCore          2.0 # 5.15
>  SHARED_LIBS +=  Qt5WebEngineWidgets       2.0 # 5.15
> -SHARED_LIBS +=  Qt5Pdf                    1.0 # 5.15
> -SHARED_LIBS +=  Qt5PdfWidgets             1.0 # 5.15
> +
> +# XXX libQt5Pdf.so.1.0: undefined symbol FPDF_InitLibrary
> +# libQt5Pdf needs to link explicitly against libQt5WebEngineCore?
> +#SHARED_LIBS +=  Qt5Pdf                    1.0 # 5.15
> +#SHARED_LIBS +=  Qt5PdfWidgets             1.0 # 5.15
>  
>  WANTLIB += ${COMPILER_LIBCXX} GL Qt5Core Qt5Designer Qt5Gui Qt5Network
>  WANTLIB += Qt5Positioning Qt5PrintSupport Qt5Qml Qt5QmlModels
> Index: patches/patch-src_buildtools_configure_json
> ===================================================================
> RCS file: 
> /cvs/ports/x11/qt5/qtwebengine/patches/patch-src_buildtools_configure_json,v
> retrieving revision 1.4
> diff -u -p -u -p -r1.4 patch-src_buildtools_configure_json
> --- patches/patch-src_buildtools_configure_json       11 Jul 2023 13:11:01 
> -0000      1.4
> +++ patches/patch-src_buildtools_configure_json       23 Sep 2023 18:48:47 
> -0000
> @@ -68,7 +68,7 @@ Index: src/buildtools/configure.json
>  -                         && (!config.linux || features.pkg-config)
>  -                         && (!config.linux || 
> features.webengine-host-pkg-config)
>  -                         && (!config.win32 || 
> features.webengine-winversion)",
> -+            "condition": "(config.unix || config.win32 || config.macos || 
> config.ios)",
> ++            "condition": "(config.win32 || config.macos || config.ios)",
>               "output": [ "privateFeature" ]
>           },
>           "build-qtwebengine-core": {
> Index: patches/patch-src_plugins_plugins_pro
> ===================================================================
> RCS file: patches/patch-src_plugins_plugins_pro
> diff -N patches/patch-src_plugins_plugins_pro
> --- /dev/null 1 Jan 1970 00:00:00 -0000
> +++ patches/patch-src_plugins_plugins_pro     23 Sep 2023 18:48:47 -0000
> @@ -0,0 +1,7 @@
> +Index: src/plugins/plugins.pro
> +--- src/plugins/plugins.pro.orig
> ++++ src/plugins/plugins.pro
> +@@ -1,3 +1,2 @@
> + TEMPLATE = subdirs
> + qtHaveModule(webenginewidgets): qtHaveModule(designer): SUBDIRS += 
> qwebengineview
> +-qtHaveModule(pdf): qtConfig(imageformatplugin): SUBDIRS += imageformats
> Index: pkg/PLIST
> ===================================================================
> RCS file: /cvs/ports/x11/qt5/qtwebengine/pkg/PLIST,v
> retrieving revision 1.3
> diff -u -p -u -p -r1.3 PLIST
> --- pkg/PLIST 11 Mar 2022 20:17:10 -0000      1.3
> +++ pkg/PLIST 23 Sep 2023 18:48:47 -0000
> @@ -1,54 +1,4 @@
> -include/X11/qt5/QtPdf/
> -include/X11/qt5/QtPdf/${VERSION}/
> -include/X11/qt5/QtPdf/${VERSION}/QtPdf/
> -include/X11/qt5/QtPdf/${VERSION}/QtPdf/private/
> -include/X11/qt5/QtPdf/${VERSION}/QtPdf/private/qpdfdestination_p.h
> -include/X11/qt5/QtPdf/${VERSION}/QtPdf/private/qpdfdocument_p.h
> -include/X11/qt5/QtPdf/${VERSION}/QtPdf/private/qpdflinkmodel_p.h
> -include/X11/qt5/QtPdf/${VERSION}/QtPdf/private/qpdflinkmodel_p_p.h
> -include/X11/qt5/QtPdf/${VERSION}/QtPdf/private/qpdfsearchmodel_p.h
> -include/X11/qt5/QtPdf/${VERSION}/QtPdf/private/qpdfsearchresult_p.h
> -include/X11/qt5/QtPdf/${VERSION}/QtPdf/private/qpdfselection_p.h
> -include/X11/qt5/QtPdf/${VERSION}/QtPdf/private/qtpdf-config_p.h
> -include/X11/qt5/QtPdf/QPdfBookmarkModel
> -include/X11/qt5/QtPdf/QPdfDestination
> -include/X11/qt5/QtPdf/QPdfDocument
> -include/X11/qt5/QtPdf/QPdfDocumentRenderOptions
> -include/X11/qt5/QtPdf/QPdfPageNavigation
> -include/X11/qt5/QtPdf/QPdfPageRenderer
> -include/X11/qt5/QtPdf/QPdfSearchModel
> -include/X11/qt5/QtPdf/QPdfSearchResult
> -include/X11/qt5/QtPdf/QPdfSelection
> -include/X11/qt5/QtPdf/QtPdf
> -include/X11/qt5/QtPdf/QtPdfDepends
> -include/X11/qt5/QtPdf/QtPdfVersion
> -include/X11/qt5/QtPdf/qpdfbookmarkmodel.h
> -include/X11/qt5/QtPdf/qpdfdestination.h
> -include/X11/qt5/QtPdf/qpdfdocument.h
> -include/X11/qt5/QtPdf/qpdfdocumentrenderoptions.h
> -include/X11/qt5/QtPdf/qpdfnamespace.h
> -include/X11/qt5/QtPdf/qpdfpagenavigation.h
> -include/X11/qt5/QtPdf/qpdfpagerenderer.h
> -include/X11/qt5/QtPdf/qpdfsearchmodel.h
> -include/X11/qt5/QtPdf/qpdfsearchresult.h
> -include/X11/qt5/QtPdf/qpdfselection.h
> -include/X11/qt5/QtPdf/qtpdf-config.h
> -include/X11/qt5/QtPdf/qtpdfglobal.h
> -include/X11/qt5/QtPdf/qtpdfversion.h
> -include/X11/qt5/QtPdfWidgets/
> -include/X11/qt5/QtPdfWidgets/${VERSION}/
> -include/X11/qt5/QtPdfWidgets/${VERSION}/QtPdfWidgets/
> -include/X11/qt5/QtPdfWidgets/${VERSION}/QtPdfWidgets/private/
> -include/X11/qt5/QtPdfWidgets/${VERSION}/QtPdfWidgets/private/qpdfview_p.h
> -include/X11/qt5/QtPdfWidgets/${VERSION}/QtPdfWidgets/private/qtpdfwidgets-config_p.h
> -include/X11/qt5/QtPdfWidgets/QPdfView
> -include/X11/qt5/QtPdfWidgets/QtPdfWidgets
> -include/X11/qt5/QtPdfWidgets/QtPdfWidgetsDepends
> -include/X11/qt5/QtPdfWidgets/QtPdfWidgetsVersion
> -include/X11/qt5/QtPdfWidgets/qpdfview.h
> -include/X11/qt5/QtPdfWidgets/qtpdfwidgets-config.h
> -include/X11/qt5/QtPdfWidgets/qtpdfwidgetsglobal.h
> -include/X11/qt5/QtPdfWidgets/qtpdfwidgetsversion.h
> +include/X11/qt5/
>  include/X11/qt5/QtWebEngine/
>  include/X11/qt5/QtWebEngine/${VERSION}/
>  include/X11/qt5/QtWebEngine/${VERSION}/QtWebEngine/
> @@ -172,26 +122,19 @@ include/X11/qt5/QtWebEngineWidgets/qwebe
>  include/X11/qt5/QtWebEngineWidgets/qwebenginescriptcollection.h
>  include/X11/qt5/QtWebEngineWidgets/qwebenginesettings.h
>  include/X11/qt5/QtWebEngineWidgets/qwebengineview.h
> -@lib lib/libQt5Pdf.so.${LIBQt5Pdf_VERSION}
> -@lib lib/libQt5PdfWidgets.so.${LIBQt5PdfWidgets_VERSION}
>  @lib lib/libQt5WebEngine.so.${LIBQt5WebEngine_VERSION}
>  @lib lib/libQt5WebEngineCore.so.${LIBQt5WebEngineCore_VERSION}
>  @lib lib/libQt5WebEngineWidgets.so.${LIBQt5WebEngineWidgets_VERSION}
> -lib/pkgconfig/Qt5Pdf.pc
> -lib/pkgconfig/Qt5PdfWidgets.pc
>  lib/pkgconfig/Qt5WebEngine.pc
>  lib/pkgconfig/Qt5WebEngineCore.pc
>  lib/pkgconfig/Qt5WebEngineWidgets.pc
> +lib/qt5/
>  lib/qt5/Qt5WebEngineCore.la
> +lib/qt5/bin/
>  @bin lib/qt5/bin/qwebengine_convert_dict
> +lib/qt5/cmake/
> +lib/qt5/cmake/Qt5Designer/
>  lib/qt5/cmake/Qt5Designer/Qt5Designer_QWebEngineViewPlugin.cmake
> -lib/qt5/cmake/Qt5Gui/Qt5Gui_QPdfPlugin.cmake
> -lib/qt5/cmake/Qt5Pdf/
> -lib/qt5/cmake/Qt5Pdf/Qt5PdfConfig.cmake
> -lib/qt5/cmake/Qt5Pdf/Qt5PdfConfigVersion.cmake
> -lib/qt5/cmake/Qt5PdfWidgets/
> -lib/qt5/cmake/Qt5PdfWidgets/Qt5PdfWidgetsConfig.cmake
> -lib/qt5/cmake/Qt5PdfWidgets/Qt5PdfWidgetsConfigVersion.cmake
>  lib/qt5/cmake/Qt5WebEngine/
>  lib/qt5/cmake/Qt5WebEngine/Qt5WebEngineConfig.cmake
>  lib/qt5/cmake/Qt5WebEngine/Qt5WebEngineConfigVersion.cmake
> @@ -201,12 +144,6 @@ lib/qt5/cmake/Qt5WebEngineCore/Qt5WebEng
>  lib/qt5/cmake/Qt5WebEngineWidgets/
>  lib/qt5/cmake/Qt5WebEngineWidgets/Qt5WebEngineWidgetsConfig.cmake
>  lib/qt5/cmake/Qt5WebEngineWidgets/Qt5WebEngineWidgetsConfigVersion.cmake
> -lib/qt5/libQt5Pdf.la
> -lib/qt5/libQt5Pdf.prl
> -@lib lib/qt5/libQt5Pdf.so.${LIBQt5Pdf_VERSION}
> -lib/qt5/libQt5PdfWidgets.la
> -lib/qt5/libQt5PdfWidgets.prl
> -@lib lib/qt5/libQt5PdfWidgets.so.${LIBQt5PdfWidgets_VERSION}
>  lib/qt5/libQt5WebEngine.la
>  lib/qt5/libQt5WebEngine.prl
>  @lib lib/qt5/libQt5WebEngine.so.${LIBQt5WebEngine_VERSION}
> @@ -218,10 +155,8 @@ lib/qt5/libQt5WebEngineWidgets.prl
>  @lib lib/qt5/libQt5WebEngineWidgets.so.${LIBQt5WebEngineWidgets_VERSION}
>  lib/qt5/libexec/
>  @bin lib/qt5/libexec/QtWebEngineProcess
> -lib/qt5/mkspecs/modules/qt_lib_pdf.pri
> -lib/qt5/mkspecs/modules/qt_lib_pdf_private.pri
> -lib/qt5/mkspecs/modules/qt_lib_pdfwidgets.pri
> -lib/qt5/mkspecs/modules/qt_lib_pdfwidgets_private.pri
> +lib/qt5/mkspecs/
> +lib/qt5/mkspecs/modules/
>  lib/qt5/mkspecs/modules/qt_lib_webengine.pri
>  lib/qt5/mkspecs/modules/qt_lib_webengine_private.pri
>  lib/qt5/mkspecs/modules/qt_lib_webenginecore.pri
> @@ -229,21 +164,14 @@ lib/qt5/mkspecs/modules/qt_lib_webengine
>  lib/qt5/mkspecs/modules/qt_lib_webenginecoreheaders_private.pri
>  lib/qt5/mkspecs/modules/qt_lib_webenginewidgets.pri
>  lib/qt5/mkspecs/modules/qt_lib_webenginewidgets_private.pri
> -lib/qt5/pkgconfig/Qt5Pdf.pc
> -lib/qt5/pkgconfig/Qt5PdfWidgets.pc
> +lib/qt5/pkgconfig/
>  lib/qt5/pkgconfig/Qt5WebEngine.pc
>  lib/qt5/pkgconfig/Qt5WebEngineCore.pc
>  lib/qt5/pkgconfig/Qt5WebEngineWidgets.pc
> +lib/qt5/plugins/
> +lib/qt5/plugins/designer/
>  @so lib/qt5/plugins/designer/libqwebengineview.so
> -@so lib/qt5/plugins/imageformats/libqpdf.so
> -lib/qt5/qml/QtQuick/Pdf/
> -@so lib/qt5/qml/QtQuick/Pdf/libpdfplugin.so
> -lib/qt5/qml/QtQuick/Pdf/plugins.qmltypes
> -lib/qt5/qml/QtQuick/Pdf/qml/
> -lib/qt5/qml/QtQuick/Pdf/qml/PdfMultiPageView.qml
> -lib/qt5/qml/QtQuick/Pdf/qml/PdfPageView.qml
> -lib/qt5/qml/QtQuick/Pdf/qml/PdfScrollablePageView.qml
> -lib/qt5/qml/QtQuick/Pdf/qmldir
> +lib/qt5/qml/
>  lib/qt5/qml/QtWebEngine/
>  lib/qt5/qml/QtWebEngine/Controls1Delegates/
>  lib/qt5/qml/QtWebEngine/Controls1Delegates/AlertDialog.qml
> 

Reply via email to