New: KDbAddQCH.cmake for creating an API dox QCH file during the build
ClosedPublic

Authored by kossebau on Nov 26 2016, 12:52 PM.

Details

Summary

Custom copy of upcoming ECMAddQCH.cmake, see https://phabricator.kde.org/D2854
for existing issues and open questions.

Test Plan

Diff Detail

Repository
R15 KDb
Branch
addQCH
Lint
No Linters Available
Unit
No Unit Test Coverage
kossebau updated this revision to Diff 8531.Nov 26 2016, 12:52 PM
kossebau retitled this revision from to New: KDbAddQCH.cmake for creating an API dox QCH file during the build.
kossebau updated this object.
kossebau edited the test plan for this revision. (Show Details)
kossebau added reviewers: KDb, staniek, piggz.
Restricted Application added a project: KDb. · View Herald TranscriptNov 26 2016, 12:52 PM
kossebau updated this revision to Diff 8553.Nov 27 2016, 5:31 PM

fix: kdb_install_qch_export needs to be called after the target is defined

kossebau updated this revision to Diff 8577.Nov 28 2016, 8:02 PM

apply all changes also done to the kproperty patch

kossebau updated this revision to Diff 8583.Nov 29 2016, 1:00 AM

workaround cmake_parse_arguments not defining variables for empty multi-var arguments

staniek requested changes to this revision.Nov 29 2016, 5:20 PM
staniek edited edge metadata.
staniek added inline comments.
cmake/modules/KDbAddQCH.cmake
502

Curent message may be not informative enough so I propose:

Unable to find the doxygen utility -> Unable to find the doxygen utility version ${DOXYGEN_MIN_VERSION)

(and for the other repos)

I just realized I have Doxygen 1.8.12, which is the last released. What's special in 1.8.13?

This revision now requires changes to proceed.Nov 29 2016, 5:20 PM
kossebau updated this revision to Diff 8657.Dec 1 2016, 1:11 AM
kossebau edited edge metadata.

improve finding tools, install QCH files to share/doc/QCH if not Qt ones

kossebau added inline comments.Dec 1 2016, 1:21 AM
cmake/modules/KDbAddQCH.cmake
502

Alternative proposal (as implemented in updated patch):
list the missing tools with version number in the normal feature_summary, so there is one central place as usual. What do you think, even better?

What's special in 1.8.13?

It will have (once released) the mentioned patch for doxygen which fixes the hardcoded JS files not being added to the QCH file.
openSUSE's doxygen package are currently prepared to include the patch already, see
https://bugzilla.suse.com/show_bug.cgi?id=1011331 :)

kossebau updated this revision to Diff 8745.Dec 4 2016, 4:59 PM
kossebau edited edge metadata.

properly use purpose property with set_package_properties for used tools

staniek accepted this revision.Dec 4 2016, 9:20 PM
staniek edited edge metadata.
staniek added inline comments.
cmake/modules/KDbAddQCH.cmake
276

QCH uppercase? What's this convention?

502

Very good.

This revision is now accepted and ready to land.Dec 4 2016, 9:20 PM
staniek requested changes to this revision.Dec 4 2016, 9:23 PM
staniek edited edge metadata.
staniek added inline comments.
cmake/modules/KDbAddQCH.cmake
276

please tell me if the files are co-installable, i.e. paths use ${KDB_BASE_NAME} or so

This revision now requires changes to proceed.Dec 4 2016, 9:23 PM
kossebau added inline comments.Dec 4 2016, 9:59 PM
cmake/modules/KDbAddQCH.cmake
276

Is was following the uppercase HTML which KDEInstallDirs is using for the DOCBUNDLEDIR vars. But would agree that lowercase feels more natural on *nixoid systems, will change.

276

Co-installability in the same directory completely depends on what is used with the OUTPUT_BASENAME argument in the kdb_add_qch(...) call. Currently it is just KDb, so will not work. Changing now to ${KDB_BASE_NAME}

kossebau updated this revision to Diff 8750.Dec 4 2016, 9:59 PM
kossebau edited edge metadata.

lowercase doc/qch, use ${KDB_BASE_NAME} fir output files

staniek accepted this revision.Dec 4 2016, 10:04 PM
staniek edited edge metadata.

Very good, thanks Friedrich!

This revision is now accepted and ready to land.Dec 4 2016, 10:04 PM

Thanks for the review! Will apply later tonight and then also transfer the changes developed here to KProperty and KReport, without review, okay?

This revision was automatically updated to reflect the committed changes.