pkgsrc-Users archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

re: qt5 questions



>* When starting sigil, I see:
>
>xkbcommon: ERROR: failed to add default include
>path /usr/pkg/lib/X11/xkb Qt: Failed to create XKB context Qt Warning:
>Could not find a location of the system's Compose files. Consider
>setting the QTCOMPOSE environment variable.
>
>The directory doesn't exist. Is there a missing dependency here?

The xkbcommon error is because XKBCONFIGROOT is coded to
${X11BASE}/lib/X11/xkb in the Makefile of libxkbcommon. 
This is the right directory for native X11 for modular it is
the wrong directory.

removing the line 
CONFIGURE_ARGS+=        --with-xkb-config-root=${X11BASE}/lib/X11/xkb

and adding 
.include "../../x11/xkeyboard-config/buildlink3.mk"

in x11/libxkbcommon/Makefile gives modular xorg the right directory.
I don't know how this works with native x11.

If you wish to silence configures complaint about not finding
xorg-macros you can add 
.include "../../devel/xorg-util-macros/buildlink3.mk"
as well.

The system compose files search directories are hardcoded in 
qtbase/src/plugins/platforminputcontexts/compose/generator/qtablegenerator.cpp
the two patches below for x11/qt5-qtbase makes this file use the
environment variable X11BASE available at configure time
concatenated with lib/X11/locale and share/X11/locale among its
hardcoded search directories. This removes the compose warning on
netbsd with modular xorg and should do this for native X11 as well. 
I don't know how it will work on other platforms though.

Happy new year to all.

/Niclas Rosenvik

(This message has been bcc:d ryoon because he is the
listed maintainer of the packages mentioned.)

---patch-qtbase_src_plugins_platforminputcontexts_compose_compose.pro begins 
here 
$NetBSD$

--- qtbase/src/plugins/platforminputcontexts/compose/compose.pro.orig   
2013-12-08 17:09:53.000000000 +0000
+++ qtbase/src/plugins/platforminputcontexts/compose/compose.pro
@@ -16,6 +16,10 @@ SOURCES += $$PWD/main.cpp \
 HEADERS += $$PWD/qcomposeplatforminputcontext.h \
            $$PWD/generator/qtablegenerator.h \
 
+
+DEFINES += X11BASE=\\\"$$(X11BASE)\\\"
+
+
 # libxkbcommon
 contains(QT_CONFIG, xkbcommon-qt): {
     include(../../../3rdparty/xkbcommon.pri)
---patch-qtbase_src_plugins_platforminputcontexts_compose_compose.pro ends here 

---patch-qtbase_src_plugins_platforminputcontexts_compose_generator_qtablegenerator.cpp
 begins here
$NetBSD$

--- 
qtbase/src/plugins/platforminputcontexts/compose/generator/qtablegenerator.cpp.orig
 2013-12-08 17:09:53.000000000 +0000
+++ 
qtbase/src/plugins/platforminputcontexts/compose/generator/qtablegenerator.cpp
@@ -81,6 +81,10 @@ void TableGenerator::initPossibleLocatio
     if (qEnvironmentVariableIsSet("QTCOMPOSE")) {
         m_possibleLocations.append(QString(qgetenv("QTCOMPOSE")));
     }
+#ifdef X11BASE
+    m_possibleLocations.append(QStringLiteral(X11BASE) + 
QStringLiteral("/share/X11/locale"));
+    m_possibleLocations.append(QStringLiteral(X11BASE) + 
QStringLiteral("/lib/X11/locale"));
+#endif
     m_possibleLocations.append(QStringLiteral("/usr/share/X11/locale"));
     m_possibleLocations.append(QStringLiteral("/usr/lib/X11/locale"));
 }
---patch-qtbase_src_plugins_platforminputcontexts_compose_generator_qtablegenerator.cpp
 ends here


Home | Main Index | Thread Index | Old Index