Review Request 114988: Fix PREFIX parameter to ecm_generate_headers to match namespace KNS3
David Faure
faure at kde.org
Mon Jan 13 08:30:02 UTC 2014
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://git.reviewboard.kde.org/r/114988/#review47294
-----------------------------------------------------------
Well, then it breaks lowercase headers, which have been <knewstuff3/entry.h> at least since 2009.
Looking at kdelibs4:
install_manifest.txt:/d/kde/inst/kde4.12/include/knewstuff3/knewstuffaction.h
install_manifest.txt:/d/kde/inst/kde4.12/include/knewstuff3/knewstuffbutton.h
install_manifest.txt:/d/kde/inst/kde4.12/include/KDE/KNS3/KNewStuffAction
install_manifest.txt:/d/kde/inst/kde4.12/include/KDE/KNS3/KNewStuffButton
(and no forwarding headers for DownloadDialog, DownloadWidget, DownloadManager, UploadDialog or Entry....)
This is inconsistent indeed. ecm_generate_prefix assumes that the prefix for camelcase and for lowercase headers is the same, apart from the case.
Oh! For sure there's a bug, I meant PREFIX KNewStuff3, rather than knewstuff3. This needs to be fixed.
I think this is more consistent than this patch, which will lead to kns3/entry.h etc. This would be a much bigger SIC than changing the prefix for camelcase headers, since KNewStuffButton is now Button anyway, and KNewStuffAction... hmm I didn't generate a forwarding header for it since it doesn't actually define such a class, but we can add that for SC reasons.
If we fix the PREFIX to KNewStuff3 then we get
-- Up-to-date: /d/kde/inst/kde_frameworks/include/KF5/KNewStuff3/KNewStuff3/DownloadDialog
-- Up-to-date: /d/kde/inst/kde_frameworks/include/KF5/KNewStuff3/KNewStuff3/DownloadWidget
-- Up-to-date: /d/kde/inst/kde_frameworks/include/KF5/KNewStuff3/KNewStuff3/UploadDialog
-- Up-to-date: /d/kde/inst/kde_frameworks/include/KF5/KNewStuff3/KNewStuff3/Button
-- Up-to-date: /d/kde/inst/kde_frameworks/include/KF5/KNewStuff3/KNewStuff3/DownloadManager
-- Up-to-date: /d/kde/inst/kde_frameworks/include/KF5/KNewStuff3/KNewStuff3/Entry
-- Up-to-date: /d/kde/inst/kde_frameworks/include/KF5/KNewStuff3/knewstuff3/knewstuff_export.h
-- Up-to-date: /d/kde/inst/kde_frameworks/include/KF5/KNewStuff3/knewstuff3/knewstuffaction.h
-- Up-to-date: /d/kde/inst/kde_frameworks/include/KF5/KNewStuff3/knewstuff3/knewstuffbutton.h
-- Up-to-date: /d/kde/inst/kde_frameworks/include/KF5/KNewStuff3/knewstuff3/downloaddialog.h
-- Up-to-date: /d/kde/inst/kde_frameworks/include/KF5/KNewStuff3/knewstuff3/downloadwidget.h
-- Up-to-date: /d/kde/inst/kde_frameworks/include/KF5/KNewStuff3/knewstuff3/downloadmanager.h
-- Up-to-date: /d/kde/inst/kde_frameworks/include/KF5/KNewStuff3/knewstuff3/uploaddialog.h
-- Up-to-date: /d/kde/inst/kde_frameworks/include/KF5/KNewStuff3/knewstuff3/entry.h
-- Up-to-date: /d/kde/inst/kde_frameworks/include/KF5/KNewStuff3/knewstuff3/button.h
Looks nice and consistent to me (including consistent with the other frameworks).
- David Faure
On Jan. 12, 2014, 8:15 p.m., Friedrich W. H. Kossebau wrote:
>
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://git.reviewboard.kde.org/r/114988/
> -----------------------------------------------------------
>
> (Updated Jan. 12, 2014, 8:15 p.m.)
>
>
> Review request for KDE Frameworks, Aleix Pol Gonzalez and David Faure.
>
>
> Repository: knewstuff
>
>
> Description
> -------
>
> Currently the KNewStuff CamelCase forwarding headers are installed in [...]/include/KF5/KNewStuff3/knewstuff3
> Which seems wrong, at least does not follow the pattern seen with the other namespaced modules. And breaks all existing #includes if the build does not use KDE4Support with its variants of the CamelCase forwarding headers.
>
> Attached patch changes the PREFIX parameter to ecm_generate_headers from knewstuff3 to KNS3, so that the prefix matches the namespace of the classes in the module.
>
>
> Diffs
> -----
>
> src/CMakeLists.txt 05cd500
>
> Diff: https://git.reviewboard.kde.org/r/114988/diff/
>
>
> Testing
> -------
>
> Applied and run make install: CamelCase includes are installed in [...]/include/KF5/KNewStuff3/KNS3 directory, code which #includes KNS3/* without KDE4Support builds.
>
>
> Thanks,
>
> Friedrich W. H. Kossebau
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/kde-frameworks-devel/attachments/20140113/23143fe0/attachment.html>
More information about the Kde-frameworks-devel
mailing list