Opened 2 years ago

Closed 2 years ago

#15881 closed enhancement (fixed)

libdbusmenu-qt cannot build docs if doxygen is present

Reported by: ken@… Owned by: ken@…
Priority: normal Milestone: 11.1
Component: BOOK Version: git
Severity: normal Keywords:
Cc:

Description

I'm looking at what qt5 modules are needed for packages in the book or otherwise likely to be used (e.g. extra kf5 apps). For this package I could not crib the work of others :)

Builds fine using the book's default instructions:

ken@virtx86_64 ~/libdbusmenu-qt-0.9.3+16.04.20160218/build $cmake -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_BUILD_TYPE=Release -DWITH_DOC=OFF -Wno-dev ..
-- The C compiler identification is GNU 11.2.0
-- The CXX compiler identification is GNU 11.2.0
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /usr/bin/cc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/c++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Autodetecting Qt version to use
-- Performing Test __DBUSMENU_HAVE_GCC_VISIBILITY
-- Performing Test __DBUSMENU_HAVE_GCC_VISIBILITY - Success
-- Performing Test __DBUSMENU_HAVE_W_OVERLOADED_VIRTUAL
-- Performing Test __DBUSMENU_HAVE_W_OVERLOADED_VIRTUAL - Success
-- Performing Test __DBUSMENU_HAVE_CXX11 - Success
-- Performing Test __DBUSMENU_HAVE_W_ALL
-- Performing Test __DBUSMENU_HAVE_W_ALL - Success
-- Performing Test HAVE_QICON_NAME
-- Performing Test HAVE_QICON_NAME - Success
-- Found PkgConfig: /usr/bin/pkg-config (found version "0.29.2") 
-- Checking for module 'QJson>=0.5'
--   No package 'QJson' found
-- Could NOT find QJSON (missing: QJSON_LIBRARIES QJSON_INCLUDE_DIR) 
-- QJSON not found, testapp will not be built
-- Configuring done
-- Generating done
-- Build files have been written to: /home/ken/libdbusmenu-qt-0.9.3+16.04.20160218/build

Note that we do not mention QJSon - there is an old tarball in conglomeration at origin state, but it needs qt4 which I assume is why we do not mention it.

We say "-DWITH_DOC=OFF: This option is set to avoid building the API documentation. Omit it if you have doxygen installed and want the documentation."

But that too needs qt4:

ken@virtx86_64 ~/libdbusmenu-qt-0.9.3+16.04.20160218/build $cmake -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_BUILD_TYPE=Release -Wno-dev ..
-- The C compiler identification is GNU 11.2.0
-- The CXX compiler identification is GNU 11.2.0
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /usr/bin/cc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/c++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Autodetecting Qt version to use
CMake Error at /usr/share/cmake-3.22/Modules/FindQt4.cmake:1314 (message):
  Found unsuitable Qt version "" from NOTFOUND, this code requires Qt 4.x
Call Stack (most recent call first):
  CMakeLists.txt:49 (find_package)

Change History (4)

comment:1 by Bruce Dubbs, 2 years ago

That package has not been updated in six years. We ought to just remove any reference to the docs, including doxygen.

The best I can tell, the only thing that needs libdbusmenu-qt is knotifications in kf5. Arch shows a few other packages, but none of those are in BLFS.

Drilling down a bit, the only thing knotifications uses is two lines in one file, src/kstatusnotifieritem.cpp, and those are optional:

#if HAVE_DBUSMENUQT
            new DBusMenuExporter(d->menuObjectPath, menu,
                                 d->statusNotifierItemDBus->dbusConnection());
            Q_EMIT d->statusNotifierItemDBus->NewMenu();
#endif

in reply to:  1 comment:2 by ken@…, 2 years ago

Owner: changed from blfs-book to ken@…

Replying to Bruce Dubbs:

That package has not been updated in six years. We ought to just remove any reference to the docs, including doxygen.

The best I can tell, the only thing that needs libdbusmenu-qt is knotifications in kf5. Arch shows a few other packages, but none of those are in BLFS.

Drilling down a bit, the only thing knotifications uses is two lines in one file, src/kstatusnotifieritem.cpp, and those are optional:

#if HAVE_DBUSMENUQT
            new DBusMenuExporter(d->menuObjectPath, menu,
                                 d->statusNotifierItemDBus->dbusConnection());
            Q_EMIT d->statusNotifierItemDBus->NewMenu();
#endif

Thanks. For some reason I failed to find the package when looking at Arch. I'm short of cycles at the moment, but I'll get a round tuit.

in reply to:  3 comment:4 by ken@…, 2 years ago

Resolution: fixed
Status: newclosed

Replying to Bruce Dubbs:

Here you go...

https://www.facebook.com/BuilderAuckland/posts/this-is-a-round-tuit-guard-it-with-your-life-tuits-are-hard-to-come-by-especiall/237588913604171/

(Needs a farcebook login to continue.) The switch to disable docs is still needed, so I'll change the explanation.

Done in @ab5dd54bd391d35f8e9f19c585ceb0cdb162dfd3 11.0-344

Note: See TracTickets for help on using tickets.